APS API (1.1)

Download OpenAPI specification:

About

Used primarily for service heartbeat checking

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "extra": "string",
  • "commit": "string",
  • "ipAddress": "string"
}

Attendance

Returns a paged list of employee additional earnings

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Company Code used to identify the company to return employee additional earnings records for

query Parameters
start
required
string <date>

The start date of the range for employee additional earnings records that are returned

end
required
string <date>

The end date of the range for employee additional earnings that are returned

Page
integer <int32>
Default: 1

The page number

PageSize
integer <int32> [ 1 .. 1000 ]
Default: 100

The page size

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "currentPage": 0,
  • "nextPage": 0,
  • "pageSize": 0,
  • "recordCount": 0,
  • "links": [
    ]
}

Returns a paged list of shifts

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique identifier assigned to the company

query Parameters
start
required
string <date>

Start date of the shift records that are returned

end
required
string <date>

End date of the shift records that are returned

Page
integer <int32>
Default: 1

The page number

PageSize
integer <int32> [ 1 .. 1000 ]
Default: 100

The page size

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "currentPage": 0,
  • "nextPage": 0,
  • "pageSize": 0,
  • "recordCount": 0,
  • "links": [
    ]
}

Returns a list of breaks for a shift

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique identifier assigned to the company

shiftId
required
integer <int32> >= 0

Unique identifier for the shift

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Company

Returns a paged list of companies

Authorizations:
BearerOAuth2
query Parameters
Page
integer <int32>
Default: 1

The page number

PageSize
integer <int32> [ 1 .. 1000 ]
Default: 100

The page size

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "currentPage": 0,
  • "nextPage": 0,
  • "pageSize": 0,
  • "recordCount": 0,
  • "links": [
    ]
}

Returns the company information

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique identifier assigned to the company

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "code": "string",
  • "displayName": "string",
  • "federalIdNumber": "string",
  • "dailyPayEarnedWagesAccess": true,
  • "controlGroup": {
    },
  • "address": {
    },
  • "shippingAddress": {
    },
  • "address1": "string",
  • "address2": "string",
  • "city": "string",
  • "state": "string",
  • "zipCode": "string"
}

Returns a paged list of payroll batches for a company

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique identifier assigned to the company

query Parameters
Page
integer <int32>
Default: 1

The page number

PageSize
integer <int32> [ 1 .. 1000 ]
Default: 100

The page size

sort
string
Default: "Desc"
Enum: "Asc" "Desc"

Sort the list by batch check date

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "currentPage": 0,
  • "nextPage": 0,
  • "pageSize": 0,
  • "recordCount": 0,
  • "links": [
    ]
}

Get list of custom fields for a company

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique identifier assigned to the company

query Parameters
Page
integer <int32>
Default: 1

The page number

PageSize
integer <int32> [ 1 .. 1000 ]
Default: 100

The page size

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "currentPage": 0,
  • "nextPage": 0,
  • "pageSize": 0,
  • "recordCount": 0,
  • "links": [
    ]
}

Returns a paged list of departments for a company

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique identifier assigned to the company

query Parameters
Page
integer <int32>
Default: 1

The page number

PageSize
integer <int32> [ 1 .. 1000 ]
Default: 100

The page size

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "currentPage": 0,
  • "nextPage": 0,
  • "pageSize": 0,
  • "recordCount": 0,
  • "links": [
    ]
}

Returns a paged list of employees for a company

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique identifier assigned to the company

query Parameters
Page
integer <int32>
Default: 1

The page number

PageSize
integer <int32> [ 1 .. 1000 ]
Default: 100

The page size

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "currentPage": 0,
  • "nextPage": 0,
  • "pageSize": 0,
  • "recordCount": 0,
  • "links": [
    ]
}

Returns a paged list of pay groups for a company. v1.1 includes extended properties. Schedule parameters (historicalPeriods, futurePeriods) are v1.1 only.

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique Identifier assigned to the company

query Parameters
Page
integer <int32>
Default: 1

The page number

PageSize
integer <int32> [ 1 .. 1000 ]
Default: 100

The page size

historicalPeriods
integer <int32>
Default: 2

Number of completed pay periods to include (v1.1 only, default 2, max 52)

futurePeriods
integer <int32>
Default: 2

Number of projected pay periods to include (v1.1 only, default 2, max 52)

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "currentPage": 0,
  • "nextPage": 0,
  • "pageSize": 0,
  • "recordCount": 0,
  • "links": [
    ]
}

Returns a single pay group by ID (v1.1 only)

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique Identifier assigned to the company

payGroupId
required
integer <int32>

Pay group ID

query Parameters
historicalPeriods
integer <int32>
Default: 2

Number of completed pay periods to include (default 2, max 52)

futurePeriods
integer <int32>
Default: 2

Number of projected pay periods to include (default 2, max 52)

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "description": "string",
  • "frequency": "string",
  • "startDate": "2019-08-24",
  • "endDate": "2019-08-24",
  • "checkDate": "2019-08-24",
  • "processDate": "2019-08-24",
  • "paydayDelay": 0,
  • "payWeekStartDay": "Sunday",
  • "bankDayRule": "string",
  • "isSuspended": true,
  • "timeCardsLocked": true,
  • "periods": [
    ]
}

Department

Returns department information

Authorizations:
BearerOAuth2
path Parameters
departmentId
required
integer <int32>

Department Id

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "number": "string",
  • "groupCode": "string",
  • "groupDescription": "string"
}

EIP

Uploads import files for a specified company using the provided file format.

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

The code representing the company for which the files are being uploaded.

query Parameters
fileFormat
string
Enum: "Xml" "Json" "DailyPay"

The format of the file being uploaded (e.g., CSV, XML).

Request Body schema: multipart/form-data
files
Array of strings <binary> [ items <binary > ]

An array of files to be uploaded.

Responses

Response samples

Content type
application/json
{
  • "transactionId": 0,
  • "requestId": 0,
  • "fileName": "string"
}

Employee

Returns employee information

Authorizations:
BearerOAuth2
path Parameters
employeeId
required
integer <int32>

Employee Id

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "companyId": 0,
  • "companyCode": "string",
  • "firstName": "string",
  • "lastName": "string",
  • "middleName": "string",
  • "suffix": "string",
  • "employmentStatus": "string",
  • "employeeNumber": "string",
  • "workEmail": "string",
  • "personalEmail": "string",
  • "homePhone": 0,
  • "mobilePhone": 0,
  • "workPhone": 0,
  • "workPhoneExt": "string",
  • "birthDate": "2019-08-24",
  • "hireDate": "2019-08-24T14:15:22Z",
  • "rehireDate": "2019-08-24T14:15:22Z",
  • "terminationDate": "2019-08-24T14:15:22Z",
  • "baseDepartmentId": 0,
  • "baseDepartment": "string",
  • "baseLocation": "string",
  • "employmentType": "string",
  • "employeeType": "string",
  • "workersCompensationCode": "string",
  • "title": "string",
  • "withholdingState": "string",
  • "unemploymentState": "string",
  • "socCode": "string",
  • "wageType": "string",
  • "hourly": true,
  • "salaryPerPayPeriod": 0.1,
  • "annualSalary": 0.1,
  • "address": {
    },
  • "payGroup": {
    },
  • "customFields": {
    },
  • "lastScheduledPayrollSummary": {
    },
  • "rates": [
    ],
  • "bankAccounts": [
    ],
  • "currentGrossEarnings": [
    ],
  • "payHistory": [
    ]
}

Returns list of employee's scheduled earnings

Authorizations:
BearerOAuth2
path Parameters
employeeId
required
integer <int32>

Employee Id

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Returns list of employee's pay rates

Authorizations:
BearerOAuth2
path Parameters
employeeId
required
integer <int32>

Employee Id

Responses

Response samples

Content type
application/json
[
  • {
    }
]

General Ledger

Returns a general ledger journal entry for a company

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Company code

query Parameters
batchId
integer <int32>

Limits results to a single batch. Takes priority over checkDate when both are provided.

checkDate
string <date>

Limits results to a single check date (yyyy-MM-dd). Only used when batchId is not provided.

combineBy
string
Default: "None"
Enum: "None" "Department" "Memo"

Controls how line items are grouped: None (default), Department, or Memo.

postDateOption
string
Default: "CheckDate"
Enum: "CheckDate" "PayPeriodEnd"

Date used for the journal entry post date: CheckDate (default) or PayPeriodEnd. PayPeriodEnd falls back to check date if multiple pay groups have different end dates.

separatePhysicalChecks
boolean
Default: true

Separates physical check vouchers from total net pay. Default: true.

includeDeductionChecks
boolean
Default: true

Includes deduction check breakdown and settle tax liability details. Default: true.

excludeEmployerExpenses
boolean
Default: true

Excludes employer deduction amounts (employer match amounts are not affected). Default: true.

applyDeductionsToBase
boolean
Default: false

Applies all deductions to employees' base departments instead of allocated departments. Default: false.

includeEmployeeDetail
boolean
Default: true

Includes employee-level detail. When enabled, forces grouping to Employee and enables deduction checks. Default: true.

Responses

Response samples

Content type
No sample

Pay

Get all pay information for a company for a given date

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Company Code to load pay information

query Parameters
date
string <date>

Pay date

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get pay information for a single employee for a given date

Authorizations:
BearerOAuth2
path Parameters
employeeId
required
integer <int32>

Single employee to load pay information

query Parameters
date
string <date>

Pay date

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Time Off Requests

Returns a paged list of time-off requests filtered by date range

Authorizations:
BearerOAuth2
path Parameters
companyCode
required
string

Unique identifier assigned to the company

query Parameters
Start
required
string <date>

Start

End
required
string <date>

End

Page
integer <int32>
Default: 1

The page number

PageSize
integer <int32> [ 1 .. 1000 ]
Default: 100

The page size

employeeId
integer <int32>

Optional employee ID filter

departmentId
integer <int32>

Optional department ID filter

status
string

Optional status filter. Accepts any value of APS.Business.Enums.Scheduling.TimeOffRequestStatus — Approved, Pending, Denied, Canceled or RequestedCancellation — which is also the set the response can return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "currentPage": 0,
  • "nextPage": 0,
  • "pageSize": 0,
  • "recordCount": 0,
  • "links": [
    ]
}