---
title: "Create New Employee"
method: POST
path: "/v1/employee"
tags: ["Employee (v1)"]
---

# Create New Employee

`POST /v1/employee`

## Request

- Base URL: `https://dc1demogw.paylocity.com/api`
- URL: `https://dc1demogw.paylocity.com/api/v1/employee`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://api.paylocity.com/IdentityServer/connect/token` scopes: `WebLinkAPI`

This resource allows for the creation of a new employee record for a specified companyID.  Additional field objects may need to be added for companies that use the New Hire Template in the Paylocity HCM solution when hiring employees and have additional required fields.
 
> 🚧 Maintenance Mode
> 
> _This resource version is in a limited support mode and should not be used for new integrations.  Please use the latest version._

## Headers

- `Authorization` string, required

## Request body

- object
  - `newEmployee` NewEmployee
    - `address1` string: Employee home 1st address line. <br />Max length: 40
    - `address2` string: Employee home 2nd address line. <br />Max length: 40
    - `adjSeniorityDate` string, date: Adjusted seniority date. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.
    - `annualSalary` number: Employee annual salary. <br />Decimal (12,2)
    - `autoGenerateEmployeeId` boolean: *True* to have Paylocity Payroll/HR solution automatically assign the next available employee ID.<br />*False* when providing a value in the employeeId field.
    - `autoPay` boolean: If set to *True*, employee will be paid automatically using defaultHours.
    - `autoPayType` string: Valid values are *N, D, S*. (N- employee won't automatically receive a salary or hours during payroll, D - employee will be automatically paid in defaultHours during payroll, S - employee will be automatically paid Salary
    - `baseRate` number: Employee base rate, used for Hourly employees. <br />Decimal (12,2)
    - `birthDate` string, date: Employee birthdate. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.
    - `city` string: Employee home city. <br />Max length: 40
    - `clockBadge` string: Employee clock badge number. Defaults to employeeId. <br />Max length: 10
    - `companyNumber` string, required: Paylocity assigned company number.<br /> Max length: 9
    - `costCenter1` string: Employer defined location, like *branch, division, department*, etc. Must match Company setup. <br />Max length: 10
    - `costCenter2` string: Employer defined location, like *branch, division, department*, etc. Must match Company setup. <br />Max length: 10
    - `costCenter3` string: Employer defined location, like *branch, division, department*, etc. Must match Company setup. <br />Max length: 10
    - `country` string: Employee country. <br /> Max length: 30
    - `county` string: Employee county.<br /> Max length: 30
    - `defaultHours` number: Employee default hours consistently worked. If autoPayType is set to D, employee will be paid hourly base rate for the defaultHours. <br />Decimal (12,2)
    - `disability` boolean: Indicates if employee has disability status.
    - `eligibleForRehire` boolean: Indicates if employee eligible for rehire.
    - `employee943` boolean: Indicates if employee in agriculture or farming.
    - `employeeId` string: Leave blank to have Paylocity Payroll/HR solution automatically assign the next available employee ID.<br /> Max length: 10
    - `employeeStatus` string: Employee current work status. Common values are *A* (Active), *L* (Leave of Absence), *T* (Terminated). <br />Max length: 20
    - `employmentType` string: Employee current employment type. Common values *RFT (Regular Full Time), RPT (Regular Part Time), SNL (Seasonal), TFT (Temporary Full Time), TPT (Temporary Part Time)*. <br />Max length: 10
    - `equalEmploymentOpportunityClass` string: Values are configured in Company > Setup > HR > EEO Classes.<br /> Max length: 10
    - `ethnicity` string: Employee ethnicity.<br /> Max length: 10
    - `firstName` string: Employee first name. <br />Max length: 40
    - `fitwExempt` boolean: Indicates if employee exempt from federal income tax.
    - `fitwExemptNotes` string: Notes for FITW exempt.<br /> Max length: 250
    - `fitwExemptReason` string: Reason code for FITW exemption. Common values are *SE* (Statutory employee), *CR* (clergy/Religious). <br /> Max length: 30
    - `futaExempt` boolean: Indicates if employee is exempt from Federal Unemployment Tax Act.
    - `futaExemptNotes` string: FUTA exempt note. <br /> Max length: 250
    - `futaExemptReason` string: Reason code for FUTA exemption. Common values are *501* (5019c)(3) Organization), *IC* (Independent Contractor).<br /> Max length: 30
    - `hireDate` string, date: Employee hired date. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.
    - `homePhone` string: Employee home phone number.<br />Max length: 12
    - `isSupervisorReviewer` boolean: Indicates if employee is a supervisor or reviewer.
    - `lastName` string: Employee last name. <br />Max length: 40
    - `maritalStatus` string: Employee marital status. Common values *D (Divorced), M (Married), S (Single), W (Widowed)*. <br />Max length: 10
    - `medExempt` boolean: Indicates if employee is Medicare exempt.
    - `medExemptNotes` string: Notes for Medicare exempt.
    - `medExemptReason` string: Reason code for Medicare exemption. Common values are *501* (5019c)(3) Organization), *IC* (Independent Contractor).<br /> Max length: 30
    - `middleName` string: Employee middle name.<br /> Max length: 20
    - `minimumWageExempt` boolean: Indicates if employee is exempt from minimum wage.
    - `nickname` string: Employee preferred display name.<br /> Max length: 20
    - `overrideTitle` boolean: Indicates override to the default Job Title. Use the title field to enter Employee job title.
    - `overtimeExempt` boolean: Indicates if employee is exempt from overtime.
    - `payFrequency` string: Employee current pay frequency. Common values are *A (Annual), B (Bi-Weekly), D (Daily), M (Monthly), S (Semi-Monthly), Q (Quarterly), W (Weekly)*. <br />Max length: 5
    - `payGrade` string: Employee pay grade. Must match Company setup. <br /> Max length: 10
    - `payGroup` string: Employee pay group. Must match Company setup. <br /> Max length: 20
    - `payRateNote` string: Pay rate notes regarding employee.<br /> Max length: 250
    - `pension` boolean: Indicates if employee is eligible for pension.
    - `personalEmailAddress` string: Employee personal email address. <br />Max length: 50
    - `personalMobilePhone` string: Employee personal mobile phone number. <br />Max length: 12
    - `positionCode` string: Employee position code. Must match Company setup.<br />Max length: 20
    - `primaryPayRateEffectiveDate` string, date: Primary Pay Rate EffectiveDate
    - `priorLastName` string: Prior last name if applicable.<br />Max length: 40
    - `rateCode` string: Employee rate (pay type) code. Valid values are *Hourly* or *Salary*. <br />Max length: 10
    - `ratePer` string: Employee base rate frequency used with payType Hourly. Common values are *Hour, Week*. Default is Hour. <br />Max length: 10
    - `reviewerCo` string: Company number of reviewer. <br />Max length: 9
    - `reviewerId` string: Employee id of the reviewer. <br />Max length: 10
    - `salary` number: Employee gross salary per pay period used with payType Salary.<br />Decimal (12,2)
    - `salutation` string: Employee preferred salutation. <br />Max length: 10
    - `sex` string: Employee gender. Common values *M* (Male), *F* (Female). <br />Max length: 1
    - `shift` string: Employee work shift.<br />Max length: 255
    - `sitwExempt` boolean: Indicates if employee exempt from state income tax.
    - `sitwExemptNotes` string: Notes for SITW exempt.<br /> Max length: 250
    - `sitwExemptReason` string: Reason code for SITW exemption. Common values are *SE* (Statutory employee), *CR* (clergy/Religious). <br /> Max length: 30
    - `smoker` boolean: Indicates if employee is a smoker.
    - `ssExempt` boolean: Indicates if employee is exempt from Social Security taxes.
    - `ssExemptNotes` string: Notes for Socal Security exemptions.<br /> Max length: 250
    - `ssExemptReason` string: Reason code for Social Security exemption. Common values are *SE* (Statutory employee), *CR* (clergy/Religious). <br /> Max length: 30
    - `ssn` string: Employee social security number. Leave it blank if valid social security number not available. <br />Max length: 11
    - `state` string: Employee home state. <br />Max length: 2
    - `statutory` boolean: Indicates if employee is statutory.
    - `suffix` string: Employee name suffix. Common values are *Jr, Sr, II*.<br />Max length: 30
    - `suiExempt` boolean: Indicates if employee is exempt from state unemployment insurance.
    - `suiExemptNotes` string: Notes for SUI exempt.<br /> Max length: 250
    - `suiExemptReason` string: Reason code for SUI exemption. Common values are *SE* (Statutory employee), *CR* (clergy/Religious). <br /> Max length: 30
    - `suiState` string: Employee SUI (State Unemployment Insurance) state. <br />Max length: 2
    - `supervisorCo` string: Supervisor's company number. Defaults to employee company number.<br />Max length: 9
    - `supervisorID` string: EmployeeId of the supervisor. <br />Max length: 10
    - `taxDistributionCode1099R` string: Employee 1099R distribution code. Common values are *7* (Normal Distribution), *F* (Charitable Gift Annuity). <br />Max length: 1
    - `taxForm` string: Employee tax form for reporting income. Valid values are *W2, 1099M, 1099R, 1099NEC, Non-US*. Default is W2. <br />Max length: 15
    - `tipped` string: Indicates if employee receives tips.
    - `title` string: Employee current job title.<br />Max length: 50
    - `unionCode` string: Employee union code. Must match Company setup. <br />Max length: 10
    - `unionDate` string, date: Employee union affiliation effective date. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.
    - `unionDues` boolean: Indicates if union dues are collected.
    - `unionInitFees` boolean: Indicates if initiations fees are collected.
    - `unionPosition` string: Employee union position. Must match Company setup. <br />Max length: 30
    - `veteran` boolean: Indicates if employee is a veteran.
    - `waliExempt` boolean: Indicates if employee is exempt from Washington state Liability Insurance.
    - `waliExemptNotes` string: Notes for WALI exemption.
    - `waliExemptReason` string: Reason code for WALI exemption. Common values are *SE* (Statutory employee), *CR* (clergy/Religious). <br /> Max length: 30
    - `workAddress1` string: Employee work 1st address line.<br /> Max length: 40
    - `workAddress2` string: Employee work 2nd address line. <br /> Max length: 40
    - `workCity` string: Employee work city.<br /> Max length: 40
    - `workCountry` string: Employee work country.<br /> Max length: 30
    - `workCounty` string: Employee work county.<br /> Max length: 30
    - `workEmailAddress` string: Employee work email. <br />Max length: 50
    - `workersComp` string: Employee worker compensation code. Must match Company setup.<br /> Max length: 10
    - `workExt` string: Employee work phone extension number.<br /> Max length: 10
    - `workLocation` string: Employee work location. <br /> Max length: 50
    - `workMailStop` string: Employee physical mail box location.<br /> Max length: 10
    - `workMobilePhone` string: Employee work mobile phone number.<br /> Max length: 12
    - `workPager` string: Employee work pager number.<br /> Max length: 20
    - `workPhone` string: Employee work phone number.<br /> Max length: 12
    - `workState` string: Employee work state.<br /> Max length: 2
    - `workZip` string: Employee work zip code.<br /> Max length: 10
    - `zip` string: Employee home zip code. <br />Max length: 10
    - `syncWebTimeRecord` boolean: If set to *True*, employee will be synced with Web Time.
    - `newBenefitClassSetup` NewBenefitClassSetup[]: newBenefitClassSetup
      - `benefitClass` string: Benefit Class code. Values are configured in Paylocity Payroll/HR solution Company > Setup > Benefits > Classes.<br />Max length: 30
      - `benefitClassSetupEffectiveDate` string, date, required: Date when Benefit Class takes effect. Common formats are MM-DD-CCYY, CCYY-MM-DD.
      - `benefitSalary` number: Salary used to configure benefits.<br />Decimal(12,2)
      - `benefitSalaryEffectiveDate` string, date: Date when Benefit Salary takes effect. Common formats are MM-DD-CCYY, CCYY-MM-DD.
      - `doNotApplyAdministrativePeriod` boolean: Applicable only for ACA Enhanced clients and Benefit Classes with ACA Employment Type of Full Time.
      - `measureACAEligibility` boolean: Applicable only for ACA Enhanced clients and Benefit Classes with ACA Employment Type of Full Time.
    - `newMainDirectDeposit` NewMainDirectDeposit[]: newMainDirectDeposit
      - `accountType` string: Account type. Valid values are *C* (Checking), *S* (Saving), *P* (Pay Card). <br />Max length: 1<br /><small>new with Web Link 16.6 release</small>
      - `routingNumber` string: ABA Transit Routing Number, entered without dashes or spaces. <br />Max length: 9<br /><small>new with Web Link 16.6 release</small>
      - `accountNumber` string: Account number, entered without special characters and spaces. <br />Max length: 17<br /><small>new with Web Link 16.6 release</small>
      - `blockSpecial` boolean: Indicates if direct deposit should be blocked when special check types such as Bonus are processed.<br /><small>new with Web Link 16.6 release</small>
      - `nameOnAccount` string: Name on the bank account. Defaults to employee's name. <br />Max length: 30<br /><small>new with Web Link 16.6 release</small>
      - `skipPreNote` boolean: Indicates if account will not pre-note.<br /><small>new with Web Link 16.6 release</small>
      - `preNoteDate` string, date: Date to end the pre-note of the account. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.<br /><small>new with Web Link 16.6 release</small>
    - `newAdditionalDirectDeposit` NewAdditionalDirectDeposit[]: newAdditionalDirectDeposit
      - `accountType` string: Account type. Valid values are *C* (Checking), *S* (Saving), *P* (Pay Card). <br />Max length: 1<br /><small>new with Web Link 16.6 release</small>
      - `routingNumber` string: ABA Transit Routing Number, entered without dashes or spaces. <br />Max length: 9<br /><small>new with Web Link 16.6 release</small>
      - `accountNumber` string: Account number, entered without special characters and spaces. <br />Max length: 17<br /><small>new with Web Link 16.6 release</small>
      - `amountType` string: Amount type to indicate the context of the amount. Common values are *F* (FLAT), *F-* (Net Minus), *P* (Percent). <br /> Max length: 5<br /><small>new with Web Link 16.6 release</small>
      - `amount` number: Amount value to be deposited to the account.<br />Decimal (12,2)<br /><small>new with Web Link 16.6 release</small>
      - `blockSpecial` boolean: Indicates if direct deposit should be blocked when special check types such as Bonus are processed.<br /><small>new with Web Link 16.6 release</small>
      - `nameOnAccount` string: Name on the bank account. Defaults to employee's name. <br />Max length: 30<br /><small>new with Web Link 16.6 release</small>
      - `skipPreNote` boolean: Indicates if account will not pre-note.<br /><small>new with Web Link 16.6 release</small>
      - `preNoteDate` string, date: Date to end the pre-note of the account. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.<br /><small>new with Web Link 16.6 release</small>
    - `newFedTax` NewFedTax[]: newFedTax
      - `amount` number: Tax amount. <br />Decimal (12,2)
      - `exemptions` number: Federal tax exemptions value. <br />Decimal (12,2)
      - `filingStatus` string: Employee federal filing status. Common values are *S* (Single), *M* (Married).<br />Max length: 50
      - `percentage` number: Tax percentage. <br />Decimal (12,2)
      - `taxCalcCode` string: Tax calculation code. Common values are *F* (Flat), *P* (Percentage), *FDFP* (Flat Dollar Amount plus Fixed Percentage). <br />Max length: 10
      - `tCode` string: Tax code. <br /> Max length: 50
    - `newLocalTax` NewLocalTax[]: newLocalTax
      - `tCode` string: Local tax code.<br />Max length: 50
      - `exemptions` number: Local tax exemptions value.<br />Decimal (12,2)
      - `exemptions2` number: Local tax exemptions 2 value.<br />Decimal (12,2)
      - `filingStatus` string: Employee local tax filing status. Must match specific local tax setup. <br /> Max length: 50
      - `residentPSD` string: Resident PSD (political subdivision code) applicable in PA. Must match Company setup.<br /> Max length: 9
      - `workPSD` string: Work location PSD. Must match Company setup. <br /> Max length: 9
    - `newStateTax` NewStateTax[]: newStateTax
      - `amount` number: State tax code.<br /> Max length: 50
      - `exemptions` number: State tax exemptions value.<br />Decimal (12,2)
      - `exemptions2` number: State tax exemptions 2 value.<br />Decimal (12,2)
      - `filingStatus` string: Employee state tax filing status. Common values are *S* (Single), *M* (Married).<br />Max length: 50
      - `grossWagePercentage` number: Gross Wage Percentage value. <br />Decimal (12,2)
      - `percentage` number: State Tax percentage. <br />Decimal (12,2)
      - `primaryTax` boolean: Indicates if primary tax.
      - `reciprocal` string: Indicates if state tax is reciprocal.
      - `specialCheckCalc` string: Supplemental check calculation code. Common values are *Blocked* (Taxes blocked on Supplemental checks), *Supp* (Use supplemental Tax Rate-Code). <br />Max length: 10
      - `taxCalcCode` string: Tax calculation code. Common values are *F* (Flat), *P* (Percentage), *FDFP* (Flat Dollar Amount plus Fixed Percentage). <br />Max length: 10
      - `tCode` string: State tax code.<br /> Max length: 50
    - `newWorkEligibility` NewWorkEligibility[]: newWorkEligibility
      - `alienOrAdmissionDocumentNbr` string: Employee USCIS or Admission Number. <br /> Must be 7-10 characters and may begin with an 'A'
      - `i9DateVerified` string, date: The date Employee I9 was verified by the employer. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.
      - `i9Notes` string: Notes regarding employee's I9.<br /> Max length: 4000
      - `i9Verified` boolean: Indicates if employee I9 is verified.
      - `sSNDateVerified` string, date: The date of employer verification of employee SSN. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.
      - `sSNNotes` string: Notes regarding employee's SSN.<br /> Max length: 4000
      - `sSNVerified` boolean: Indicates if employee SSN is verified.
      - `visaType` string: Employee Visa type. Must match one of the system coded values.<br /> Max length: 100
      - `workAuthorization` string: Employee work authorization. Must match one of the system coded values.<br /> Max length: 100
      - `workUntil` string, date: End date of employee work eligibility. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.
      - `attestedDate` string, date: The date the I-9 Verification form was attested by Employer or Authorized representative. Common formats are *MM-DD-CCYY, CCYY-MM-DD*.
      - `i94AdmissionNumber` string: Form I-94 admission number.<br /> Must be 11 numeric characters.
      - `foreignPassportNumber` string: Foreign Passport Number.<br /> Max length: 50
      - `countryOfIssuance` string: If Foreign Passport number is provided, provide its country of issuance. Must match Paylocity setup.<br /> Max length: 30

## Response `201`

Successfully added

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `500`: Internal Server Error

---

[API](https://skmtc.dev/paylocity/apis/weblink-api.md) - [All operations](https://skmtc.dev/paylocity/apis/weblink-api/llms.txt) - [OpenAPI document](https://skmtc.dev/paylocity/apis/weblink-api/revisions/8152ed40b412?raw)
