openapi: 3.0.0
info:
title: Time and Expenses
description: |
Work with employee timesheets and expenses.
version: '1.0'
servers:
- url: https://api.intacct.com/ia/api/v1-beta2
description: Open Beta
tags:
- name: Timesheets
description: >-
Timesheets ensure workers are paid appropriately and help project managers
invoice clients and track overall project costs and expenses over time-
Timesheets are used in both Projects and Time & Expenses. A subscription
to Projects is required to approve timesheets and save timesheets as
drafts.
Each time a timesheet entry is submitted, a timesheet approval history
object is created for tracking purposes.
Please be aware
that this object is currently "Uncertified" in our open beta, signifying
that it has not undergone the complete review process and the design may
change during ongoing refinement. Users are advised to exercise discretion
in using this object and are encouraged to provide feedback.
x-displayName: Timesheets
- name: Timesheet lines
description: >-
A timesheet line is an entry on a timesheet that represents work done by
one employee on a single day. Each timesheet line should reflect the
dimensions used by the company. That is, work done for one customer or
project should be recorded in a separate timesheet line from work done for
another customer or project, etc. Reports and invoices use the dimension
values to group timesheet lines for billing.Please be
aware that this object is currently "Uncertified" in our open beta,
signifying that it has not undergone the complete review process and the
design may change during ongoing refinement. Users are advised to exercise
discretion in using this object and are encouraged to provide
feedback.
x-displayName: Timesheet lines
- name: Timesheet approval records
description: >-
An approval record is the history of a specific timesheet entry’s
approvals. The approval record does not exist for timesheet entries that
are auto-approved or do not require approval. Approvals can include from 1
to 5 stages. The approval record also includes the current approval state.
Approval states are: Submitted, Pending Approval, Approved, and Declined.
Note that a subscription to Projects is required to approve
timesheets.Please be aware that this object is
currently "Uncertified" in our open beta, signifying that it has not
undergone the complete review process and the design may change during
ongoing refinement. Users are advised to exercise discretion in using this
object and are encouraged to provide feedback.
x-displayName: Timesheet approval records
- name: Time types
description: >-
Time type description -- explain what it's for and how it's used.Please be aware that this object is currently "Uncertified"
in our open beta, signifying that it has not undergone the complete review
process and the design may change during ongoing refinement. Users are
advised to exercise discretion in using this object and are encouraged to
provide feedback.
x-displayName: Time types
- name: Earning types
description: >-
Earning types are a key component in configuring the system to post
project labor costs to one or more General Ledger journals. After creating
earning types, they must be assigned to employees before the system can
begin posting labor costs to a General Ledger journal.Please be aware that this object is currently "Uncertified"
in our open beta, signifying that it has not undergone the complete review
process and the design may change during ongoing refinement. Users are
advised to exercise discretion in using this object and are encouraged to
provide feedback.
x-displayName: Earning types
- name: Employee expenses
description: >-
Expense report for an employee. This is a header object for
employee-expense-lines.Please be aware that this object
is currently "Uncertified" in our open beta, signifying that it has not
undergone the complete review process and the design may change during
ongoing refinement. Users are advised to exercise discretion in using this
object and are encouraged to provide feedback.
x-displayName: Employee expenses
- name: Employee expense lines
description: >-
Details for each expense line on the employee expense report.Please be aware that this object is currently "Uncertified"
in our open beta, signifying that it has not undergone the complete review
process and the design may change during ongoing refinement. Users are
advised to exercise discretion in using this object and are encouraged to
provide feedback.
x-displayName: Employee expense lines
- name: Employee expense summaries
description: >-
Expense summaries are collections of the same type of transactions,
grouped together for processing. Expense summaries are referenced by
[employee expense](expenses-employee-expense) objects.Please be aware that this object is currently "Uncertified"
in our open beta, signifying that it has not undergone the complete review
process and the design may change during ongoing refinement. Users are
advised to exercise discretion in using this object and are encouraged to
provide feedback.
x-displayName: Employee expense summaries
- name: Employee expense types
description: >-
An employee expense type is a user-defined type that associates a certain
type of expense with a GL account. It is applied to line items in an
employee expense reports or expense adjustments.
x-displayName: Employee expense types
- name: Employee expense payment types
description: >-
User-defined employee expense payment type that is applied to the line
items in an employee expense report or an expense adjustment.Please be aware that this object is currently "Uncertified"
in our open beta, signifying that it has not undergone the complete review
process and the design may change during ongoing refinement. Users are
advised to exercise discretion in using this object and are encouraged to
provide feedback.
x-displayName: Employee expense payment types
- name: Unit rates
description: Unit-rate description -- explain what it's for and how it's used.
x-displayName: Unit rates
- name: Employees
description: >-
An employee is a resource that executes work for a company and is
associated with a financial transaction such as a timesheet entry or
expense transaction. If the employee is also a user in Sage Intacct (which
is required if they will be entering Time & Expenses), the employee and
user must be associated with the same Sage Intacct contact.Please be aware that this object is currently "Uncertified"
in our open beta, signifying that it has not undergone the complete review
process and the design may change during ongoing refinement. Users are
advised to exercise discretion in using this object and are encouraged to
provide feedback.
x-displayName: Employees
- name: Employee types
description: >-
An employee type is a user-defined or default type for an employee,
usually related to payroll requirements.
Examples include full time, part time, intern, and so forth.
Please be aware that this object is currently
"Uncertified" in our open beta, signifying that it has not undergone the
complete review process and the design may change during ongoing
refinement. Users are advised to exercise discretion in using this object
and are encouraged to provide feedback.
x-displayName: Employee types
- name: employee groups
description: >-
A employee group is a specified set of employees, or a set of employeees
that meet certain criteria. You can use groups to filter or display
information in multiple ways, for instance by showing data from only
certain employeees.Please be aware that this object is
currently "Uncertified" in our open beta, signifying that it has not
undergone the complete review process and the design may change during
ongoing refinement. Users are advised to exercise discretion in using this
object and are encouraged to provide feedback.
x-displayName: employee groups
paths:
/objects/time/timesheet:
get:
summary: List timesheets
description: >-
Returns up to 100 object references from the collection with a key, ID,
and link for each timesheet. This operation is mostly for use in
testing; use query to find timesheets that meet certain criteria and to
specify properties that are returned.
tags:
- Timesheets
operationId: list-time-timesheet
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of timesheets
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of timesheets:
value:
ia::result:
- key: '101'
id: '101'
href: /objects/time/timesheet/101
- key: '102'
id: '102'
href: /objects/time/timesheet/102
- key: '103'
id: '103'
href: /objects/time/timesheet/103
ia::meta:
totalCount: 3
start: 1
pageSize: 100
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create a timesheet
description: Creates a new timesheet.
tags:
- Timesheets
operationId: create-time-timesheet
requestBody:
description: timesheet
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/time-timesheet'
- $ref: '#/components/schemas/time-timesheetRequiredProperties'
examples:
Create a timesheet:
value:
beginDate: '2023-01-01'
state: submitted
description: Week of 01/01/23
employee:
key: '973'
attachment:
key: '8420'
lines:
- dimensions:
department:
key: '11'
location:
key: '22'
project:
key: '1'
costType:
key: '2'
task:
key: '1'
customer:
key: '13'
item:
key: '13'
entryDate: '2023-04-01'
quantity: 6
description: Week of 04/01/23
notes: Talked to client regarding project
timeType:
key: '1'
isBillable: true
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New timesheet
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New timesheet created:
value:
ia::result:
key: '40'
id: '40'
href: /objects/time/timesheet/40
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/time/timesheet/{key}:
parameters:
- name: key
description: System-assigned unique key for the timesheet.
in: path
required: true
schema:
type: string
get:
summary: Get a timesheet
description: Returns detailed information for a specified timesheet.
tags:
- Timesheets
operationId: get-time-timesheet-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the timesheet
properties:
ia::result:
$ref: '#/components/schemas/time-timesheet'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the timesheet:
value:
ia::result:
key: '23'
id: '23'
href: /objects/time/timesheet/23
beginDate: '2023-01-01'
endDate: '2023-12-31'
postingDate: '2023-01-01'
state: submitted
unitOfMeasure: Hours
hoursInDay: 8
description: Week of 01/01/23
calculationMethod: hourly
postActualLaborCost: false
employee:
key: '973'
id: E-001
href: /objects/company-config/employee/973
employeeContact:
key: '977'
id: John Smith
firstName: John
lastName: Smith
href: /objects/company-config/contact/977
attachment:
key: '8420'
id: Attach-01
href: /objects/company-config/attachment/973
employeeClassId: EMP_CLS_001
employeeDepartmentId: DEP-11
employeeLocation:
key: '22'
id: LOC-22
href: /objects/company-config/location/22
employeePositionId: MGR
lines:
- key: '1411'
id: '1411'
href: /objects/time/timesheet-line/1411
timesheet:
key: '11'
id: '11'
href: /objects/time/timesheet/11
dimensions:
department:
key: '11'
id: DEP-11
name: Sales and Marketing
href: /objects/company-config/department/11
location:
key: '22'
id: LOC-22
name: California
href: /objects/company-config/location/22
employee:
key: '10'
id: EMP-10
name: Thomas, Glenn
href: /objects/company-config/employee/10
project:
key: '1'
id: Proj-001
name: Implementation
href: /objects/projects/project/1
costType:
id: '2'
key: '2'
name: Project Expense
href: /objects/construction/cost-type/2
task:
id: '1'
key: '1'
name: Project Task
href: /objects/projects/task/1
customer:
key: '13'
id: CUST-13
name: Jack In the Box
href: /objects/accounts-receivable/customer/13
item:
key: '13'
id: Case 13
name: Platform pack
href: /objects/inventory-control/item/13
entryDate: '2023-04-01'
quantity: 6
lineNumber: 1
description: Week of 04/01/23
notes: Talked to client regarding project
state: approved
timeType:
key: '1'
id: Salaries At Root
name: Salaries At Root
href: /objects/time/time-type/1
isBillable: true
isBilled: 'false'
statisticalJournal:
key: '7483'
id: '7483'
href: /objects/company-config/employee/10
billableUtilizedAccount:
key: '8293'
id: '8293'
href: /objects/general-ledger/statistical-account/8293
nonBbillableUtilizedAccount:
key: '8294'
id: '8294'
href: /objects/general-ledger/statistical-account/8294
billableNonUtilizedAccount:
key: '8295'
id: '8295'
href: /objects/general-ledger/statistical-account/8295
nonBillableNonUtilizedAccount:
key: '8296'
id: '8296'
href: /objects/general-ledger/statistical-account/8296
hours:
billable: 8
nonBillable: 2
approved: 10
approvedBillable: 8
approvedNonBillable: 2
utilized: 10
nonUtilized: 4
approvedUtilized: 3
approvedNonUtilized: 2
externalPayroll:
costRate: 1
billingRate: 1
amount: '90'
employerTaxes: 15
fringes: 10
cashFringes: 2
laborClass:
key: '15'
id: '15'
name: Labor Class
href: /objects/construction/labor-class/15
audit:
createdDateTime: '2022-04-20T16:20:00Z'
modifiedDateTime: '2022-04-20T16:20:00Z'
createdBy: '1'
modifiedBy: '95'
audit:
createdDateTime: '2022-04-20T16:20:00Z'
modifiedDateTime: '2022-04-20T16:20:00Z'
createdBy: '1'
modifiedBy: '95'
ia::meta:
totalCount: 3
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update a timesheet
description: >-
Updates an existing timesheet by setting field values. Any fields not
provided remain unchanged.
tags:
- Timesheets
operationId: update-time-timesheet-key
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/time-timesheet'
- type: object
properties:
id:
readOnly: true
examples:
Updates a timesheet:
value:
state: submitted
description: Week of 01/01/23
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Updated timesheet
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Timesheet updated:
value:
ia::result:
key: '40'
id: '40'
href: /objects/time/timesheet/40
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete a timesheet
description: Deletes a timesheet.
tags:
- Timesheets
operationId: delete-time-timesheet-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/services/time/timesheet/recall:
post:
summary: Recall a timesheet
description: >
Recalls a timesheet after it has been submitted and not yet approved.
The transaction state is changed from submitted to draft. This allows
changes to be made without going through the approval process or having
the transaction edited by someone with permission to edit.
tags:
- Timesheets
operationId: recall-timesheet
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/time-timesheet-recall-request'
examples:
Timesheet to recall:
value:
key: '155096'
responses:
'200':
description: Executed
content:
application/json:
schema:
type: object
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/time-timesheet-recall-response'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Response:
value:
ia::result:
- key: '155096'
status: completed
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/time/timesheet-line:
get:
summary: List timesheet lines
description: >-
Returns up to 100 object references from the collection with a key, ID,
and link for each timesheet line. This operation is mostly for use in
testing; use query to find timesheet lines that meet certain criteria
and to specify properties that are returned.
tags:
- Timesheet lines
operationId: list-time-timesheet-line
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of timesheet lines
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of timesheet lines:
value:
ia::result:
- key: '4101'
id: '4101'
href: /objects/time/timesheet-line/4101
- key: '4102'
id: '4102'
href: /objects/time/timesheet-line/4102
- key: '4103'
id: '4103'
href: /objects/time/timesheet-line/4103
ia::meta:
totalCount: 3
start: 1
pageSize: 100
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create a timesheet line
description: Creates a new timesheet line.
tags:
- Timesheet lines
operationId: create-time-timesheet-line
requestBody:
description: timesheet-line
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/time-timesheet-line'
- $ref: '#/components/schemas/time-timesheet-lineRequiredProperties'
examples:
Creates a timesheet line:
value:
timesheet:
key: '11'
dimensions:
department:
key: '11'
location:
key: '22'
project:
key: '1'
costType:
key: '2'
task:
key: '1'
customer:
key: '13'
item:
key: '13'
entryDate: '2023-04-01'
quantity: 6
description: Week of 04/01/23
notes: Talked to client regarding project
timeType:
key: '1'
isBillable: true
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New timesheet-line
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New timesheet line created:
value:
ia::result:
key: '4108'
id: '4108'
href: /objects/time/timesheet-line/4108
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/time/timesheet-line/{key}:
parameters:
- name: key
description: System-assigned unique key for the timesheet line.
in: path
required: true
schema:
type: string
get:
summary: Get a timesheet line
description: Returns detailed information for a specified timesheet line.
tags:
- Timesheet lines
operationId: get-time-timesheet-line-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the timesheet-line
properties:
ia::result:
$ref: '#/components/schemas/time-timesheet-line'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the timesheet line:
value:
ia::result:
key: '1411'
id: '1411'
href: /objects/time/timesheet-line/1411
timesheet:
key: '11'
id: '11'
href: /objects/time/timesheet/11
dimensions:
employee:
key: '10'
id: EMP-10
name: Thomas, Glenn
href: /objects/company-config/employee/10
department:
key: '11'
id: DEP-11
name: Sales and Marketing
href: /objects/company-config/department/11
location:
key: '22'
id: LOC-22
name: California
href: /objects/company-config/location/22
project:
key: '1'
id: Proj-001
name: Implementation
href: /objects/projects/project/1
costType:
key: '2'
id: '2'
name: Project Expense
href: /objects/construction/cost-type/2
task:
id: '1'
key: '1'
name: Project Task
href: /objects/projects/task/1
customer:
key: '13'
id: CUST-13
name: Jack In the Box
href: /objects/accounts-receivable/customer/13
item:
key: '13'
id: Case 13
name: Platform pack
href: /objects/inventory-control/item/13
entryDate: '2023-04-01'
quantity: 6
lineNumber: 1
description: Week of 04/01/23
notes: Talked to client regarding project
state: approved
timeType:
key: '1'
id: Salaries At Root
href: /objects/time/time-type/1
isBillable: true
isBilled: 'false'
statisticalJournal:
key: '7483'
id: TSSJ
href: /objects/general-ledger/statistical-account/10
billableUtilizedAccount:
key: '8293'
id: '9293'
href: /objects/general-ledger/statistical-account/8293
nonBbillableUtilizedAccount:
key: '8294'
id: '9294'
href: /objects/general-ledger/statistical-account/8294
billableNonUtilizedAccount:
key: '8295'
id: '9295'
href: /objects/general-ledger/statistical-account/8295
nonBillableNonUtilizedAccount:
key: '8296'
id: '9296'
href: /objects/general-ledger/statistical-account/8296
hours:
billable: 8
nonBillable: 2
approved: 10
approvedBillable: 8
approvedNonBillable: 2
utilized: 10
nonUtilized: 4
approvedUtilized: 3
approvedNonUtilized: 2
externalPayroll:
costRate: 1
billingRate: 1
amount: '90'
employerTaxes: 15
fringes: 10
cashFringes: 2
laborClass:
key: '15'
id: LC001
name: Labor Class
href: /objects/construction/labor-class/15
laborShift:
key: '18'
id: LS001
name: Labor Shift
href: /objects/construction/labor-class/18
laborUnion:
key: '20'
id: LU001
name: Labor Union
href: /objects/construction/labor-class/20
audit:
createdDateTime: '2022-04-20T16:20:00Z'
modifiedDateTime: '2022-04-20T16:20:00Z'
createdBy: '1'
modifiedBy: '95'
ia::meta:
totalCount: 3
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update a timesheet line
description: >-
Updates an existing timesheet line by setting field values. Any fields
not provided remain unchanged.
tags:
- Timesheet lines
operationId: update-time-timesheet-line-key
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/time-timesheet-line'
examples:
Updates a timesheet line:
value:
key: '40'
description: Week of 04/01/23
notes: Talked to client regarding project
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Updated timesheet-line
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Timesheet-line updated:
value:
ia::result:
key: '40'
id: '40'
href: /objects/time/timesheet-line/40
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete a timesheet line
description: Deletes a timesheet line.
tags:
- Timesheet lines
operationId: delete-time-timesheet-line-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/time/timesheet-approval-record:
get:
summary: List timesheet approval records
description: >-
Returns a collection with a key, ID, and link for each timesheet
approval record.
tags:
- Timesheet approval records
operationId: list-time-timesheet-approval-record
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of timesheet-approval-record objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of time sheet approval record objects:
value:
ia::result:
- key: '46'
id: '46'
href: /objects/time/timesheet-approval-record/46
- key: '44'
id: '44'
href: /objects/time/timesheet-approval-record/44
- key: '40'
id: '40'
href: /objects/time/timesheet-approval-record/40
ia::meta:
totalCount: 3
start: 1
pageSize: 5
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/time/timesheet-approval-record/{key}:
parameters:
- name: key
description: System-assigned unique key for the timesheet approval record.
in: path
required: true
schema:
type: string
get:
summary: Get a timesheet approval record
description: Returns detailed information for a particular timesheet approval record.
tags:
- Timesheet approval records
operationId: get-time-timesheet-approval-record-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the timesheet-approval-record
properties:
ia::result:
$ref: '#/components/schemas/time-timesheet-approval-record'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Example 1:
value:
ia::result:
key: '200'
id: '200'
href: /objects/time/timesheet-approval-record/200
approvalStage: 1
approvalType: Department Approval
approvalLevel: '2'
comments: Approved by Admin
recordDate: '2021-01-23'
state: submitted
timesheet:
key: '101'
id: '101'
href: /objects/time/timesheet/101
timesheetLine:
key: '142'
id: '142'
lineNumber: 3
href: /objects/time/timesheet-line/142
approvedBy:
key: '202'
id: cjackson
href: /objects/company-config/user/202
approver:
key: '203'
id: jlee
href: /objects/company-config/user/203
completedBy:
key: '204'
id: gadams
href: /objects/company-config/user/204
createdBy:
key: '205'
id: vluce
href: /objects/company-config/user/205
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/time/time-type:
get:
summary: List time types
description: Returns a collection with a key, ID, and link for each time type.
tags:
- Time types
operationId: list-time-type
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of time-type objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of time types:
value:
ia::result:
- key: '46'
id: Overtime
href: /objects/time/time-type/46
- key: '44'
id: Part time
href: /objects/time/time-type/44
- key: '40'
id: Full time
href: /objects/time/time-type/40
ia::meta:
totalCount: 3
start: 1
pageSize: 5
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create a time type
description: Creates a new time type.
tags:
- Time types
operationId: create-time-type
requestBody:
description: ''
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/time-time-type'
- $ref: '#/components/schemas/time-typeRequiredProperties'
examples:
Create a time type:
value:
earningType:
key: '22'
glAccount:
key: '12'
offsetGLAccount:
key: '15'
status: active
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New time-type
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New time type:
value:
ia::result:
key: '10'
id: '10'
href: /objects/time/time-type/10
ia::meta:
totalCount: 3
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/time/time-type/{key}:
parameters:
- name: key
description: system-assigned unique key for the time type.
in: path
required: true
schema:
type: string
get:
summary: Get a time type
description: Returns detailed information for a particular time type.
tags:
- Time types
operationId: get-time-type-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the time-type
properties:
ia::result:
$ref: '#/components/schemas/time-time-type'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the time type:
value:
ia::result:
key: '23'
id: Overtime
href: /objects/time/time-type/23
earningType:
href: /objects/company-config/earning-type/23
key: '22'
id: Salary
glAccount:
href: /objects/general-ledger/account/12
key: '12'
id: '5001'
name: Labor
offsetGLAccount:
href: /objects/general-ledger/account/23
key: '15'
id: '5002'
name: Labor Offset
status: active
ia::meta:
totalCount: 3
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update a time type
description: >-
Updates an existing time type by setting field values. Any fields not
provided remain unchanged.
tags:
- Time types
operationId: update-time-type-key
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/time-time-type'
- type: object
properties:
id:
readOnly: true
examples:
Updates a time type:
value:
status: active
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Updated time-type
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Updated time type:
value:
ia::result:
key: '10'
id: Overtime
href: /objects/time/time-type/10
ia::meta:
totalCount: 3
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete a time type
description: Deletes a time type.
tags:
- Time types
operationId: delete-time-type-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/company-config/earning-type/{key}:
parameters:
- schema:
type: string
name: key
in: path
required: true
description: System-assigned key for the earning type.
get:
summary: Get an earning type
description: Returns detailed information for a specified earning type.
tags:
- Earning types
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
ia::result:
$ref: '#/components/schemas/company-config-earning-type'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Get an earning type:
value:
ia::result:
key: '1'
id: Over time
billableGLAccount:
key: '158'
id: '6775.30'
name: Travel
href: /objects/general-ledger/account/23
nonBillableGLAccount:
key: '158'
id: '6774.30'
name: Expense
href: /objects/general-ledger/account/23
rateMultiplier: '2'
calculationMethod: hourly
audit:
createdDateTime: '2022-04-20T16:20:00Z'
modifiedDateTime: '2022-04-20T16:20:00Z'
createdBy: '1'
modifiedBy: '95'
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
description: Bad Request
operationId: get-company-config-earning-type-key
security:
- OAuth2: []
patch:
summary: Update an earning type
description: >-
Updates an existing earning type by setting field values. Any fields not
provided remain unchanged.
tags:
- Earning types
operationId: patch-objects-company-config-earning-type-key
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/company-config-earning-type'
- type: object
properties:
id:
readOnly: true
examples:
Updates an earning type:
value:
rateMultiplier: '20'
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Updated earning-type
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Updated earning type:
value:
ia::result:
key: '10'
id: Overtime
href: /objects/time/earning-type/10
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete an earning type.
operationId: delete-objects-company-config-earning-type-key
description: Deletes an earning type.
tags:
- Earning types
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/company-config/earning-type:
post:
summary: Create an earning type
description: Creates a new earning type.
tags:
- Earning types
operationId: create-objects-company-config-earning-type-key
requestBody:
description: ''
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/company-config-earning-type'
- $ref: '#/components/schemas/company-config-earning-typeRequiredProperties'
examples:
Create an earning type:
value:
id: Over time
billableGLAccount:
key: '158'
nonBillableGLAccount:
key: '159'
rateMultiplier: '2'
calculationMethod: hourly
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New earning-type
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New earning type:
value:
ia::result:
key: '10'
id: '10'
href: /objects/time/earning-type/10
ia::meta:
totalCount: 3
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
get:
summary: List earning types
description: Returns a collection with a key, ID, and link for each earning type.
tags:
- Earning types
operationId: get-objects-company-config-earning-type
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of Earning types
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of earning types:
value:
ia::result:
- key: '46'
id: Overtime
name: Overtime
href: /objects/time/earning-type/46
- key: '44'
id: Part time
name: Part time
href: /objects/time/earning-type/44
- key: '40'
id: Full time
name: Full time
href: /objects/time/earning-type/40
ia::meta:
totalCount: 3
start: 1
pageSize: 5
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense:
get:
summary: List employee expenses
description: >
Returns up to 100 employee expense objects from the collection with a
key, ID, and link for each expense. This operation is mostly for use in
testing; use the query service to find expense objects that meet certain
criteria and to specify the properties that are returned.
tags:
- Employee expenses
operationId: list-expenses-employee-expense
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of employee expense objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
Get list of employee expenses:
value:
ia::result:
- key: '84'
id: EXP-00001
href: /objects/expenses/employee-expense/84
- key: '85'
id: EXP-00002
href: /objects/expenses/employee-expense/85
- key: '60'
id: EXP-00003
href: /objects/expenses/employee-expense/60
ia::meta:
totalCount: 3
start: 1
pageSize: 5
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create an employee expense
description: >-
Creates a new employee expense.
You must specify a unique employee expense ID when creating an employee
expense unless document sequencing is configured, in which case the ID
is auto-generated.
tags:
- Employee expenses
operationId: create-expenses-employee-expense
requestBody:
description: Creates an employee expense
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/expenses-employee-expense'
- $ref: '#/components/schemas/expenses-employee-expenseRequiredProperties'
examples:
Creates an employee expense:
value:
state: submitted
expenseReportNumber: EXP-00001
employee:
id: '10'
createdDate: '2021-03-11'
expenseSummary:
postingDate: '2021-01-31'
title: Expenses - Q1 batch
basePaymentInformation:
baseCurrency: USD
reimbursementInformation:
reimbursementCurrency: EUR
description: Travel expense
memo: Paid to employee
lines:
- account: null
id: '6775.30'
paidTo: paid To
paidFor: paid For
isBillable: false
form1099:
isForm1099: 'true'
type: MISC
box: '3'
paymentType:
key: '1'
name: Non-reimburse
isNonreimbursable: false
quantity: '10'
unitrate: '20'
txnCurrency: INR
txnAmount: '100'
transactionToReimburseConversion:
exchangeRateDate: '2021-03-11'
exchangeRateTypeId: Intacct Daily Rate
dimensions:
location:
id: '1'
department:
id: '1'
class:
id: REST_CLS_001
item:
id: Case 13
employee:
id: '10'
vendor:
id: '1605212096809'
customer:
id: '113'
project:
id: NET-XML30-2
warehouse:
id: WH01
task:
id: tet
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New employee expense
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New employee expense:
value:
ia::result:
key: '124'
id: '124'
href: /objects/expenses/employee-expense/124
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense/{key}:
parameters:
- name: key
description: System-assigned key for the employee-expense.
in: path
required: true
schema:
type: string
get:
summary: Get an employee expense
description: Returns detailed information for a specified employee expense.
tags:
- Employee expenses
operationId: get-expenses-employee-expense-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the employee expense
properties:
ia::result:
$ref: '#/components/schemas/expenses-employee-expense'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the employee expense:
value:
ia::result:
expenseReportNumber: ER-0152
employee:
id: '10'
key: '10'
href: /objects/company-config/employee/10
employeeContact:
key: '977'
id: Thomas Glenn
firstName: Thomas
lastName: Glenn
href: /objects/company-config/contact/977
key: '124'
id: '124'
createdDate: '2021-03-11'
expenseSummary:
postingDate: '2021-01-31'
title: Expenses - Q1 batch
key: '3'
id: '3'
href: /objects/expenses/employee-expense-summary/3
basePaymentInformation:
totalEntered: '1.38'
totalPaid: '0'
totalSelected: '0'
totalDue: '1.38'
baseCurrency: USD
state: approved
reimbursementInformation:
totalEntered: '1.16'
totalSelected: '0'
totalPaid: '0'
totalDue: '1.16'
reimbursementCurrency: EUR
description: Supplies for customer training
nonReimbursable:
baseTotalEntered: '0'
reimbursementTotalEntered: '0'
lines:
- key: '288'
id: '288'
employee-expense:
id: '124'
key: '124'
href: /objects/expenses/employee-expense/124
quantity: '0'
glAccount:
key: '158'
id: '6775.30'
name: Travel
href: /objects/account/158
entryDate: '2021-03-11'
paidTo: paid To
paidFor: paid For
baseAmount: '1.38'
reimburseToBase:
exchangeRateDate: '2021-03-11'
exchangeRateTypeId: '-1'
exchangeRate: '1.1899'
expenseType:
key: Meals
id: '6000'
reimbursementInformation:
reimbursementAmount: '1.16'
totalSelected: '0'
totalPaid: '0'
isBillable: false
isBilled: false
state: approved
form1099:
isForm1099: 'true'
type: MISC
box: '3'
paymentType:
isNonreimbursable: false
unitrate: '10'
lineNumber: 1
currency:
txnCurrency: INR
txnAmount: '100'
exchangeRateDate: '2021-03-11'
exchangeRateTypeId: Intacct Daily Rate
exchangeRate: '1'
attachment:
key: '1'
id: '1'
dimensions:
location:
key: '1'
id: '1'
name: USA
href: /objects/company-config/location/1
department:
key: '1'
id: '1'
name: IT
href: /objects/company-config/department/1
class:
key: '731'
id: REST_CLS_001
name: Education
href: /objects/company-config/class/731
item:
key: '13'
id: '13'
name: Support
href: /objects/inventory-control/item/13
employee:
key: '10'
id: '10'
href: /objects/company-config/employee/10
vendor:
key: '357'
id: '1605212096809'
name: Boston Properties
href: /objects/accounts-payable/vendor/357
customer:
key: '13'
id: '113'
name: Jack In the Box
href: /objects/accounts-receivable/customer/13
project:
key: '2'
id: NET-XML30-2
name: Binford Implementation
href: /objects/projects/project/2
task:
key: '2'
id: tet
name: Implementation services
href: /objects/projects/task/2
warehouse:
key: '6'
id: WH01
name: WH01 Name
href: /objects/inventory-control/warehouse/6
href: /objects/expenses/employee-expense-line/288
memo: Covered by customer
href: /objects/expenses/employee-expense/124
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update an employee expense
description: >-
Updates an existing employee expense by setting field values. Any fields
not provided remain unchanged.
tags:
- Employee expenses
operationId: update-expenses-employee-expense-key
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/expenses-employee-expense'
- type: object
properties:
reimbursement:
properties:
reimbursementCurrency:
readOnly: true
examples:
Updates an employee expense:
value:
memo: Covered by customer
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Updated employee expense
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Updated employee expense:
value:
ia::result:
key: '124'
id: '124'
href: /objects/expenses/employee-expense/124
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete an employee expense
description: Deletes an employee expense.
tags:
- Employee expenses
operationId: delete-expenses-employee-expense-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense-line:
get:
summary: List employee expense lines
description: >-
Returns a collection with a key, ID, and link for each employee expense
line.
tags:
- Employee expense lines
operationId: list-expenses-employee-expense-line
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: List of employee expense line objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of employee expense line objects:
value:
ia::result:
- key: '100'
id: '100'
href: /objects/expenses/employee-expense-line/100
- key: '101'
id: '101'
href: /objects/expenses/employee-expense-line/101
- key: '102'
id: '102'
href: /objects/expenses/employee-expense-line/102
ia::meta:
totalCount: 3
start: 1
pageSize: 5
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create an employee expense line
description: Creates a new employee expense line.
tags:
- Employee expense lines
operationId: create-expenses-employee-expense-line
requestBody:
description: Creates an employee expense line
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/expenses-employee-expense-line'
- $ref: '#/components/schemas/expenses-employee-expense-lineRequiredProperties'
examples:
Creates an employee expense line:
value:
account:
id: '6775.3'
paidTo: Stella Johnson
paidFor: Hotel stay
isBillable: false
form1099:
isForm1099: 'true'
type: MISC
box: '3'
paymentType:
key: '1'
id: Non-reimburse
isNonreimbursable: false
quantity: '10'
unitrate: '20'
txnCurrency: INR
txnAmount: '100'
transactionToReimburseConversion:
exchangeRateDate: '2021-03-11'
exchangeRateTypeId: Intacct Daily Rate
dimensions:
location:
id: '1'
department:
id: '1'
class:
id: REST_CLS_001
item:
id: Case 13
employee:
id: '10'
vendor:
id: '1605212096809'
customer:
id: '113'
project:
id: NET-XML30-2
warehouse:
id: WH01
task:
id: tet
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New employee expense line
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New employee expense line:
value:
ia::result:
key: '124'
id: '124'
href: /objects/expenses/employee-expense-line/124
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense-line/{key}:
parameters:
- name: key
description: System-assigned key for the employee expense line.
in: path
required: true
schema:
type: string
get:
summary: Get an employee expense line
description: Returns detailed information for a specified employee expense line.
tags:
- Employee expense lines
operationId: get-expenses-employee-expense-line-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: Details of the employee expense line
properties:
ia::result:
$ref: '#/components/schemas/expenses-employee-expense-line'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the employee expense line:
value:
ia::result:
key: '312'
id: '312'
employee-expense:
id: '136'
key: '136'
href: /objects/expenses/employee-expense/136
glAccount:
key: '158'
id: '6775.30'
name: Travel
href: /objects/account/158
entryDate: '2021-03-11'
paidTo: Stella Johnson
paidFor: Hotel stay
reimburseToBase:
baseAmount: '1.38'
exchangeRateDate: '2021-03-11'
exchangeRateTypeId: '-1'
exchangeRate: '1.1899'
dimensions:
location:
key: '1'
id: '1'
name: USA
href: /objects/company-config/location/1
department:
key: '1'
id: '1'
name: IT
href: /objects/company-config/department/1
class:
key: '731'
id: REST_CLS_001
name: Enterprises
href: /objects/company-config/class/731
item:
key: '13'
id: Case 13
name: Platform pack
href: /objects/inventory-control/item/13
employee:
key: '10'
id: '10'
name: Thomas, Glenn
href: /objects/company-config/employee/10
vendor:
key: '357'
id: '1605212096809'
name: GenLab
href: /objects/accounts-payable/vendor/357
customer:
key: '13'
id: '113'
name: Jack In the Box
href: /objects/accounts-receivable/customer/13
project:
key: '2'
id: NET-XML30-2
name: Talcomp training
href: /objects/projects/project/2
task:
key: '2'
id: tet
name: Design
href: /objects/projects/task/2
warehouse:
key: '6'
id: WH01
name: WH01
href: /objects/inventory-control/warehouse/6
lineNumber: 1
expenseType:
key: Meals
id: '6000'
reimbursement:
reimbursementAmount: '1.16'
totalSelected: '0'
totalPaid: '0'
isBillable: false
isBilled: false
state: approved
form1099:
isForm1099: 'true'
type: MISC
box: '3'
paymentType:
key: '1'
id: Non-reimburse
isNonreimbursable: false
quantity: '5'
unitRate: '20'
currency:
txnCurrency: INR
txnAmount: '4444'
exchangeRateDate: '2021-03-11'
exchangeRateTypeId: '-1'
exchangeRate: '65'
userExchangeRate: '5'
href: /objects/expenses/employee-expense-line/312
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update an employee expense line
description: >-
Updates an existing employee expense line by setting field values. Any
fields not provided remain unchanged.
tags:
- Employee expense lines
operationId: update-expenses-employee-expense-line-key
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/expenses-employee-expense-line'
examples:
Updates an employee expense line:
value:
paidTo: Travel expense
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: Updated employee expense line
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Updated employee expense line:
value:
ia::result:
key: '124'
id: '124'
href: /objects/expenses/employee-expense-line/124
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete an employee expense line
description: Deletes an employee expense line.
tags:
- Employee expense lines
operationId: delete-expenses-employee-expense-line-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense-summary:
get:
summary: List employee expense summaries
description: >
Returns up to 100 expense summaries from the collection with a key, ID,
and link for each summary. This operation is mostly for use in testing;
use the query service to find expense summaries that meet certain
criteria and to specify the properties that are returned.
tags:
- Employee expense summaries
operationId: list-expenses-employee-expense-summary
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: List of employee expense summary objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of employee expense summary objects:
value:
ia::result:
- key: '13'
id: '13'
href: /objects/expenses/employee-expense-summary/13
- key: '15'
id: '15'
href: /objects/expenses/employee-expense-summary/15
- key: '16'
id: '16'
href: /objects/expenses/employee-expense-summary/16
ia::meta:
totalCount: 3
start: 1
pageSize: 3
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create an employee expense summary
description: Creates a new employee expense summary.
tags:
- Employee expense summaries
operationId: create-expenses-employee-expense-summary
requestBody:
description: Employee expense summary to create
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/expenses-employee-expense-summary'
- $ref: '#/components/schemas/expenses-employeeExpenseSummaryRequiredProperties'
examples:
Creates an employee expense summary:
value:
title: Expenses (USD) Q1 Batch
postingDate: '2021-01-23'
totalAmount: '100'
status: active
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
description: New employee expense summary
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New employee-expense-summary:
value:
ia::result:
key: '10'
id: '10'
href: /objects/expenses/employee-expense-summary/10
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense-summary/{key}:
parameters:
- name: key
description: System-assigned key for the employee expense summary.
in: path
required: true
schema:
type: string
get:
summary: Get an employee expense summary
description: Returns detailed information for a specified employee expense summary.
tags:
- Employee expense summaries
operationId: get-expenses-employee-expense-summary-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: Details of the employee expense summary
properties:
ia::result:
$ref: '#/components/schemas/expenses-employee-expense-summary'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the employee expense summary:
value:
ia::result:
key: '18'
id: '18'
title: Expense reports for week 03
postingDate: '2023-01-20'
totalAmount: '100'
state: open
recordType: expense
summaryCreationType: manual
bankAccount:
key: 1
id: BOA
href: /objects/cash-management/bank-account/1
preventGLPosting: false
href: /objects/expenses/employee-expense-summary/18
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update an employee expense summary
description: >-
Updates an existing employee expense summary by setting field values.
Any fields not provided remain unchanged.
tags:
- Employee expense summaries
operationId: update-expenses-employee-expense-summary-key
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/expenses-employee-expense-summary'
examples:
Updates an employee expense summary:
value:
name: Expense report for January
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: Updated employee expense summary
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Updated employee expense summary:
value:
ia::result:
key: '124'
id: '124'
href: /objects/expenses/employee-expense-summary/124
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete an employee expense summary
description: Deletes an employee expense summary.
tags:
- Employee expense summaries
operationId: delete-expenses-employee-expense-summary-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense-type:
get:
summary: List employee expense types
description: >
Returns up to 100 expense types from the collection with a key, ID, and
link for each type. This operation is mostly for use in testing; use the
query service to find expense types that meet certain criteria and to
specify the properties that are returned.
tags:
- Employee expense types
operationId: list-expenses-employee-expense-type
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: List of employee expense type objects.
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of employee expense types:
value:
ia::result:
- key: '46'
id: Travel
href: /objects/expenses/employee-expense-type/46
- key: '44'
id: Transportation
href: /objects/expenses/employee-expense-type/44
- key: '40'
id: Compensation
href: /objects/expenses/employee-expense-type/40
ia::meta:
totalCount: 3
start: 1
pageSize: 5
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create an employee expense type
description: Creates a new employee expense type.
tags:
- Employee expense types
operationId: create-expenses-employee-expense-type
requestBody:
description: Creates an employee expense type.
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/expenses-employee-expense-type'
- $ref: '#/components/schemas/expenses-employee-expense-typeRequiredProperties'
examples:
Creates an employee expense type:
value:
id: Travel
status: active
description: Travel fare
unitCurrency: USD
glAccount:
id: '6000'
unitRates:
- rate: '200'
startDate: '2021-01-23'
- rate: '100'
startDate: '2021-03-23'
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
description: New employee expense type.
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New employee expense type:
value:
ia::result:
key: '10'
id: Travel
href: /objects/expenses/employee-expense-type/10
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense-type/{key}:
parameters:
- name: key
description: System-assigned key for the employee expense type.
in: path
required: true
schema:
type: string
get:
summary: Get an employee expense type
description: Returns detailed information for a specified employee expense type.
tags:
- Employee expense types
operationId: get-expenses-employee-expense-type-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: Details of the employee expense type.
properties:
ia::result:
$ref: '#/components/schemas/expenses-employee-expense-type'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the employee expense type:
value:
ia::result:
key: '63'
audit:
createdDateTime: '2023-12-21T08:40:05Z'
modifiedDateTime: '2023-12-21T08:47:08Z'
createdBy: '1'
modifiedBy: '1'
id: Travel
description: Travel fare
glAccount:
key: '6000'
id: G&A Salaries
name: G&A Salaries
href: /objects/general-ledger/account/6000
status: active
offsetGLAccount:
key: '6253'
id: Meals
name: Meals
href: /objects/general-ledger/account/6253
item:
key: '1'
id: '10'
name: PC Computer
href: /objects/inventory-control/item/6253
form1099:
type: W-2G
box: '1'
unitCurrency: USD
unitRates:
- id: '28'
key: '28'
employeeExpenseType:
id: '63'
key: '63'
href: /objects/expenses/employee-expense-type/63
rate: '200'
startDate: '2021-01-23'
audit:
createdDateTime: '2023-12-21T08:47:08Z'
modifiedDateTime: '2023-12-21T08:47:08Z'
createdBy: '1'
modifiedBy: '1'
href: /objects/expenses/unit-rate/28
- id: '29'
key: '29'
employeeExpenseType:
id: '63'
key: '63'
href: /objects/expenses/employee-expense-type/63
rate: '100'
startDate: '2021-01-23'
audit:
createdDateTime: '2023-12-21T08:47:08Z'
modifiedDateTime: '2023-12-21T08:47:08Z'
createdBy: '1'
modifiedBy: '1'
href: /objects/expenses/unit-rate/29
href: /objects/expenses/employee-expense-type/63
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update an employee expense type
description: >-
Updates an existing employee expense type by setting field values. Any
fields not provided remain unchanged.
tags:
- Employee expense types
operationId: update-expenses-employee-expense-type-key
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/expenses-employee-expense-type'
- type: object
properties:
id:
readOnly: true
examples:
Updates an employee expense type:
value:
description: Personal travel
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
description: Updated employee expense type.
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Updated employee expense type:
value:
ia::result:
key: '47'
id: Travel
href: /objects/expenses/employee-expense-type/124
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete an employee expense type
description: Deletes an employee expense type.
tags:
- Employee expense types
operationId: delete-expenses-employee-expense-type-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense-payment-type:
get:
summary: List employee expense payment types
description: >-
Returns a collection with a key, ID, and link for each employee expense
payment type.
tags:
- Employee expense payment types
operationId: list-expenses-employee-expense-payment-type
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of employee expense payment type objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of employee expense payment type:
value:
ia::result:
- key: '100'
id: Non-reimburse
href: /objects/expenses/employee-expense-payment-type/100
- key: '101'
id: Reimburse
href: /objects/expenses/employee-expense-payment-type/101
- key: '102'
id: Billable
href: /objects/expenses/employee-expense-payment-type/102
ia::meta:
totalCount: 3
start: 1
pageSize: 5
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create an employee expense payment type
description: Creates a new employee expense payment type.
tags:
- Employee expense payment types
operationId: create-expenses-employee-expense-payment-type
requestBody:
description: Creates an employee expense payment type.
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/expenses-employee-expense-payment-type'
- $ref: '#/components/schemas/employeeExpensePaymentTypeRequiredProperties'
examples:
Creates an employee expense payment type:
value:
id: Non Reimburse
status: active
description: Non reimbursable payment type
offsetAccount:
id: '2420'
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New employee expense payment type
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New employee expense payment type:
value:
ia::result:
key: '18'
id: Non Reimburse
href: /objects/expenses/employee-expense-payment-type/12345
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/employee-expense-payment-type/{key}:
parameters:
- name: key
description: System-assigned key for the employee expense payment type.
in: path
required: true
schema:
type: string
get:
summary: Get an employee expense payment type
description: >-
Returns detailed information for a specified employee expense payment
type.
tags:
- Employee expense payment types
operationId: get-expenses-employee-expense-payment-type-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the employee expense payment type
properties:
ia::result:
$ref: '#/components/schemas/expenses-employee-expense-payment-type'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the employee expense payment type:
value:
ia::result:
key: '10'
id: Non Reimburse
description: description
isNonReimbursable: true
offsetGLAccount:
key: '70'
id: '2420'
name: EE-Office Supplies
href: /objects/account/70
status: active
audit:
createdDateTime: '2021-09-02T08:38:53Z'
modifiedDateTime: '2021-09-02T08:38:53Z'
createdBy: '1'
modifiedBy: '1'
href: /objects/expenses/employee-expense-payment-type/10
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update an employee expense payment type
description: >-
Updates an existing employee expense payment type by setting field
values. Any fields not provided remain unchanged.
tags:
- Employee expense payment types
operationId: update-expenses-employee-expense-payment-type-key
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/expenses-employee-expense-payment-type'
- type: object
properties:
id:
readOnly: true
examples:
Updates an employee expense payment type:
value:
status: active
description: Non reimbursable payment type
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Updated employee expense payment type
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Updated employee expense payment type:
value:
ia::result:
key: '10'
id: Non Reimburse
href: /objects/expenses/employee-expense-payment-type/10
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete an employee expense payment type
description: Deletes an employee expense payment type.
tags:
- Employee expense payment types
operationId: delete-expenses-employee-expense-payment-type-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/unit-rate:
get:
summary: List
description: Returns a collection with a key, ID, and link for each unit-rate.
tags:
- Unit rates
operationId: list-expenses-unit-rate
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of unit-rate objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of unit rates:
value:
ia::result:
- key: '12345'
id: Travel-rate
href: /objects/expenses/unit-rate/12345
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
start: 1
pageSize: 100
next: 101
previous: null
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/expenses/unit-rate/{key}:
parameters:
- name: key
description: system-assigned unique key for the unit-rate.
in: path
required: true
schema:
type: string
get:
summary: Get a unit-rate
description: Returns detailed information for a specified unit-rate.
tags:
- Unit rates
operationId: get-expenses-unit-rate-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the unit-rate
properties:
ia::result:
$ref: '#/components/schemas/expenses-unit-rate'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of unit rate:
value:
ia::result:
key: '23'
id: '23'
href: /objects/expenses/unit-rate/23
rate: '10'
startDate: '2021-01-23'
audit:
createdDateTime: '2022-04-20T16:20:00Z'
modifiedDateTime: '2022-04-20T16:20:00Z'
createdBy: '1'
modifiedBy: '95'
employeeExpenseType:
name: Travel
key: '47'
id: '47'
href: /objects/expenses/employee-expense-type/47
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/company-config/employee:
get:
summary: List employees
description: >-
Returns up to 100 object references from the collection with a key, ID,
and link for each employee. This operation is mostly for use in testing;
use query to find employees that meet certain criteria and to specify
properties that are returned.
tags:
- Employees
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of employee objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
example-1:
value:
ia::result:
- key: '32'
id: '100'
href: /objects/company-config/employee/32
- key: '52'
id: Emp2
href: /objects/company-config/employee/52
- key: '17'
id: '16'
href: /objects/company-config/employee/17
ia::meta:
totalCount: 20
start: 1
pageSize: 100
'400':
$ref: '#/components/responses/400error'
operationId: list-company-config-employee
security:
- OAuth2: []
post:
summary: Create an employee
description: >-
Creates a new employee. If the employee is also a user in Sage Intacct
(which is required if they will be entering Time & Expenses), the
employee and user must be associated with the same Sage Intacct contact.
tags:
- Employees
operationId: create-company-config-employee
requestBody:
description: Employee to create
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/company-config-employee'
- $ref: '#/components/schemas/company-config-employeeRequiredProperties'
examples:
Create a new employee:
value:
id: jSmith
SSN: '650125930'
jobTitle: Accountants
status: active
startDate: '2021-04-30'
birthDate: '1984-04-13'
endDate: '2026-04-30'
gender: female
name: John Smith
terminationType: voluntary
defaultCurrency: USD
manager:
id: '11'
location:
id: '1'
department:
id: '3'
class:
id: '1'
earningType:
id: Salaries
isPostActualCostWithVariance: false
employeeType:
id: 2nd Level Employee
primaryContact:
id: Imam
attachmentFolder:
id: Attachment_hh
key: '1'
payMethod: Cash
filePaymentService: ACH
ach:
achenabled: 'true'
achBankRoutingNumber: '121000358'
achAccountNumber: '54545454545454'
achAccountType: Checking Account
achRemittanceType: personal(PPD)
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New employee
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New employee created:
value:
ia::result:
key: '52'
id: Emp3
href: /objects/company-config/employee/52
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/company-config/employee/{key}:
parameters:
- name: key
description: System-assigned key for the employee.
in: path
required: true
schema:
type: string
get:
summary: Get an employee
description: Returns detailed information for a specified employee.
tags:
- Employees
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the employee
properties:
ia::result:
$ref: '#/components/schemas/company-config-employee'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
example-1:
value:
ia::result:
key: '63'
id: jSmith
SSN: '650125930'
jobTitle: Accountant
location:
id: '1'
key: '1'
name: United States of America
href: /objects/company-config/location/1
department:
id: '3'
key: '3'
name: Engineering
href: /objects/company-config/department/3
manager:
key: '24'
id: '11'
href: /objects/company-config/employee/24
birthDate: '1984-04-13'
startDate: '2021-04-30'
endDate: '2026-04-30'
status: active
employeeType:
id: 2nd Level Employee
name: 2nd Level Employee
key: '6'
href: /objects/company-config/employee-type/6
gender: female
terminationType: voluntary
name: Smith
primaryContact:
firstName: Anderson
id: Anderson
name: Anderson
lastName: Lee
key: '68'
href: /objects/company-config/contact/68
attachmentFolder:
id: Admin Default Folder
key: '6'
href: /objects/company-config/folder/6
defaultCurrency: USD
form1099:
isForm1099: 'true'
type: A
box: D
earningType:
key: '1'
id: Salaries
name: Salaries
href: /objects/company-config/earning-type/1
isPostActualCostWithVariance: false
class:
id: '1'
name: class
key: '1'
payMethod: Cash
filePaymentService: ACH
ach:
achenabled: 'true'
achBankRoutingNumber: '121000358'
achAccountNumber: '54545454545454'
achAccountType: Checking Account
achRemittanceType: personal(PPD)
canSendPaymentNotification: true
placeholderResource: false
mergePaymentRequests: true
employeePosition:
key: '1'
id: position
href: /objects/company-config/employee/63
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
operationId: get-company-config-employee-key
security:
- OAuth2: []
patch:
summary: Update an employee
description: >-
Updates an existing employee by setting field values. Any fields not
provided remain unchanged.
tags:
- Employees
operationId: update-company-config-employee-key
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/company-config-employee'
- type: object
properties:
id:
readOnly: true
examples:
Update when an employee resigns:
value:
status: inactive
endDate: '2023-04-01'
terminationType: voluntary
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Updated employee
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Employee updated:
value:
ia::result:
key: '52'
id: Emp2
href: /objects/company-config/employee/52
ia::meta:
totalCount: 1
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete an employee
description: Deletes an employee.
tags:
- Employees
operationId: delete-company-config-employee-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/company-config/employee-type:
get:
summary: List employee types
description: Returns a collection with a key, ID, and link for each employee type.
tags:
- Employee types
operationId: list-company-config-employee-type
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of employee-type objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List employee types:
value:
ia::result:
- key: '100'
id: Part-time
href: /objects/company-config/employee-type/100
- key: '101'
id: Full-time
href: /objects/company-config/employee-type/101
- key: '102'
id: Contractor
href: /objects/company-config/employee-type/102
ia::meta:
totalCount: 3
start: 1
pageSize: 5
next: 0
previous: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create an employee type
description: >+
Creates a new employee type.
Permissions and other requirements
Subscription | Employees Basic Employee Tracking
and General Ledger (enable the Employees dimension) |
User type | Business, Project Manager |
Permissions | Add Employee Type |
tags:
- Employee types
operationId: create-company-config-employee-type
requestBody:
description: employee type to create
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/company-config-employee-type'
- $ref: '#/components/schemas/company-config-employee-typeRequiredProperties'
examples:
Creates an employee type:
value:
id: Internal
parent:
key: '12'
status: active
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New employee type
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New employee type:
value:
ia::result:
key: '1'
id: Internal
href: /objects/company-config/employee-type/1
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/company-config/employee-type/{key}:
parameters:
- name: key
description: system-assigned unique key for the employee type.
in: path
required: true
schema:
type: string
get:
summary: Get an employee type
description: Returns detailed information for a specified employee type.
tags:
- Employee types
operationId: get-company-config-employee-type-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the employee-type
properties:
ia::result:
$ref: '#/components/schemas/company-config-employee-type'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the employee type:
value:
ia::result:
key: '23'
id: Contractor
href: /objects/company-config/employee-type/23
parent:
href: /objects/company-config/employee-type/7
id: Contractor
key: '7'
form1099:
type: MISC
box: '3'
status: active
audit:
createdDateTime: '2022-04-20T16:20:00Z'
modifiedDateTime: '2022-04-20T16:20:00Z'
createdBy: '1'
modifiedBy: '95'
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update an employee type
description: >+
Updates an existing employee type by setting field values. Any fields
not provided remain unchanged.
Permissions and other requirements
Subscription | Employees Basic Employee Tracking
and General Ledger (enable the Employees dimension) |
User type | Business, Project Manager |
Permissions | Edit Employee Type |
tags:
- Employee types
operationId: update-company-config-employee-type-key
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/company-config-employee-type'
- type: object
properties:
id:
readOnly: true
examples:
Set status to inactive:
value:
status: inactive
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Employee type updated
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Updated employee type:
value:
ia::result:
key: '1'
id: Internal
href: /objects/company-config/employee-type/1
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete an employee type
description: >+
Deletes an employee type.
Permissions and other requirements
Subscription | Employees Basic Employee Tracking
and General Ledger (enable the Employees dimension) |
User type | Business, Project Manager |
Permissions | Edit Employee Type |
tags:
- Employee types
operationId: delete-company-config-employee-type-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/company-config/employee-group:
get:
summary: List employee groups
description: >
Returns up to 100 employee groups from the collection with a key, ID,
and link for each group. This operation is mostly for use in testing;
use the query service to find employee groups that meet certain criteria
and specify the properties that are returned.
tags:
- employee groups
operationId: list-company-config-employee-group
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: List of employee-group objects
properties:
ia::result:
type: array
items:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata-pages'
examples:
List of employee group:
value:
ia::result:
- key: '1'
id: '1'
href: /objects/company-config/employee-group/1
- key: '3'
id: '3'
href: /objects/company-config/employee-group/3
- key: '5'
id: '5'
href: /objects/company-config/employee-group/5
ia::meta:
totalCount: 3
start: 1
pageSize: 100
next: null
previous: null
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
post:
summary: Create a employee group
description: Creates a new employee group.
tags:
- employee groups
operationId: create-company-config-employee-group
requestBody:
description: Creates a new employee group.
required: true
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/company-config-employee-group'
- $ref: '#/components/schemas/company-config-employee-groupRequiredProperties'
examples:
Creates a employee group of type all:
value:
id: E 01
name: my top 01 employee
description: my top 01 employee
groupType: all
sortOrder: descending
sortField: EMPLOYEEID
conditionType: and
memberFilter:
- FIELD: EMPLOYEEID
OPERATOR: equals
VALUE: '8'
responses:
'201':
description: Created
content:
application/json:
schema:
type: object
title: New employee group
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
New employee group of type all:
value:
ia::result:
key: '21'
id: E 01
href: /objects/company-config/employee-group/19
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
/objects/company-config/employee-group/{key}:
parameters:
- name: key
description: system-assigned unique key for the employee group.
in: path
required: true
schema:
type: string
get:
summary: Get an employee group
description: Returns detailed information for a specified employee group.
tags:
- employee groups
operationId: get-company-config-employee-group-key
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Details of the employee-group
properties:
ia::result:
$ref: '#/components/schemas/company-config-employee-group'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Details of the employee Group:
value:
ia::result:
key: '23'
id: MGR
href: /objects/company-config/employee-group/23
name: Sr. Managers
description: Managers G10 and above
groupType: specific
sortOrder: ascending
maxMatches: '10'
sortField: EMPLOYEEID
isDimensionStructure: false
conditionType: and
expression: (1 AND 2)
memberFilter:
- field: STATUS
operator: isOneOf
value: inactive
groupMembers:
- key: '1'
id: jsmith
href: /objects/company-config/employee/23
status: active
sortOrder: ascending
employeeContact:
key: '973'
id: Thomas, Glenn
href: /objects/company-config/contact/23
audit:
createdDateTime: '2022-04-20T16:20:00Z'
modifiedDateTime: '2022-04-20T16:20:00Z'
createdBy: '1'
modifiedBy: '95'
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
patch:
summary: Update a employee group
description: >-
Updates an existing employee group by setting field values. Any fields
not provided remain unchanged.
tags:
- employee groups
operationId: update-company-config-employee-group-key
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/company-config-employee-group'
- type: object
properties:
id:
readOnly: true
examples:
Updates a employee group:
value:
description: My Top 001 employee
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
title: Updated Department group
properties:
ia::result:
$ref: '#/components/schemas/object-reference'
ia::meta:
$ref: '#/components/schemas/metadata'
examples:
Updated employee group:
value:
ia::result:
key: '7'
id: E 01
href: /objects/company-config/employee-group/7
ia::meta:
totalCount: 1
totalSuccess: 1
totalError: 0
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
delete:
summary: Delete a employee group
description: Deletes a employee group.
tags:
- employee groups
operationId: delete-company-config-employee-group-key
responses:
'204':
description: No Content
'400':
$ref: '#/components/responses/400error'
security:
- OAuth2: []
components:
schemas:
time-timesheetRequiredProperties:
type: object
required:
- beginDate
object-reference:
type: object
description: Reference to created or updated object
properties:
key:
type: string
example: '12345'
id:
type: string
example: ID123
href:
type: string
readOnly: true
example: /objects///12345
metadata-pages:
description: Metadata for collection response
type: object
properties:
totalCount:
type: integer
description: Total count
readOnly: true
example: 3
start:
type: integer
description: Start element number
readOnly: true
example: 1
pageSize:
type: integer
description: Page size
readOnly: true
example: 100
next:
type: integer
description: Next element number
readOnly: true
nullable: true
example: 101
previous:
type: integer
description: Previous element number
readOnly: true
nullable: true
example: null
metadata:
description: Metadata for response
type: object
properties:
totalCount:
type: integer
description: Total count
readOnly: true
example: 3
totalSuccess:
type: integer
description: Total success
readOnly: true
example: 2
totalError:
type: integer
description: Total errors
readOnly: true
example: 1
error-response:
type: object
description: Error response
properties:
ia::result:
type: object
properties:
ia::error:
type: object
properties:
code:
type: string
example: invalidRequest
message:
type: string
example: Payload contains errors
supportId:
type: string
example: sQrM9%7EYdh5oDEWVb80mrn9xuHjoAAAABBQ
errorId:
type: string
example: REST-1064
additionalInfo:
type: object
properties:
messageId:
type: string
example: IA.PAYLOAD_CONTAINS_ERRORS
placeholders:
type: string
propertySet:
type: string
details:
type: array
items:
type: object
properties:
code:
type: string
example: invalidRequest
message:
type: string
example: /testDate is not a valid field
errorId:
type: string
example: REST-1043
target:
type: string
example: /testDate
additionalInfo:
type: object
properties:
messageId:
type: string
example: IA.NOT_A_VALID_FIELD
placeholders:
type: string
example:
FIELD: /testDate
propertySet:
type: string
ia::meta:
$ref: '#/components/schemas/metadata'
dimension-ref:
type: object
properties:
location:
type: object
properties:
key:
type: string
description: Location key
example: '22'
nullable: true
id:
type: string
description: Location
example: LOC-22
nullable: true
name:
type: string
description: Location name
readOnly: true
example: California
nullable: true
href:
type: string
readOnly: true
example: /objects/company-config/location/22
department:
type: object
properties:
key:
type: string
description: Department key
example: '11'
nullable: true
id:
type: string
description: Department
example: DEP-11
nullable: true
name:
type: string
description: Department name
readOnly: true
example: Sales and Marketing
nullable: true
href:
type: string
readOnly: true
example: /objects/company-config/department/11
employee:
type: object
properties:
key:
type: string
description: Employee key
example: '10'
nullable: true
id:
type: string
description: Employee ID
example: EMP-10
nullable: true
name:
type: string
description: Employee name
readOnly: true
example: Thomas, Glenn
nullable: true
href:
type: string
example: /objects/company-config/employee/10
readOnly: true
project:
type: object
properties:
key:
type: string
description: Project key
example: '2'
nullable: true
id:
type: string
description: Project ID
example: NET-XML30-2
nullable: true
name:
type: string
description: Project name
readOnly: true
example: Talcomp training
nullable: true
href:
type: string
readOnly: true
example: /objects/projects/project/2
customer:
type: object
properties:
key:
type: string
description: Customer key
example: '13'
nullable: true
id:
type: string
description: Customer ID
example: CUST-13
nullable: true
name:
type: string
description: Customer name
readOnly: true
example: Jack In the Box
nullable: true
href:
type: string
readOnly: true
example: /objects/accounts-receivable/customer/13
vendor:
type: object
properties:
key:
type: string
description: Vendor key
example: '357'
nullable: true
id:
type: string
description: Vendor ID
example: '1605212096809'
nullable: true
name:
type: string
description: Vendor name
readOnly: true
example: GenLab
nullable: true
href:
type: string
readOnly: true
example: /objects/accounts-payable/vendor/357
item:
type: object
properties:
key:
type: string
description: Item key
example: '13'
nullable: true
id:
type: string
description: Item ID
example: Case 13
nullable: true
name:
type: string
description: Item name
readOnly: true
example: Platform pack
nullable: true
href:
type: string
readOnly: true
example: /objects/inventory-control/item/13
warehouse:
type: object
properties:
key:
type: string
description: Warehouse key
example: '6'
nullable: true
id:
type: string
description: Warehouse ID
example: WH01
nullable: true
name:
type: string
description: Warehouse name
readOnly: true
example: WH01
nullable: true
href:
type: string
readOnly: true
example: /objects/inventory-control/warehouse/6
class:
type: object
properties:
key:
type: string
description: Class key
example: '731'
nullable: true
id:
type: string
description: Class ID
example: REST_CLS_001
nullable: true
name:
type: string
description: Class name
readOnly: true
example: Enterprises
nullable: true
href:
type: string
readOnly: true
example: /objects/company-config/class/731
task:
type: object
properties:
id:
type: string
description: Task ID
example: '1'
nullable: true
key:
type: string
description: Task key
example: '1'
nullable: true
name:
type: string
description: Task name
readOnly: true
example: Project Task
nullable: true
href:
type: string
readOnly: true
example: /objects/projects/task/1
costType:
type: object
properties:
id:
type: string
description: Cost Type ID
example: '2'
nullable: true
key:
type: string
description: Cost Type key
example: '2'
nullable: true
name:
type: string
description: Cost Type name
readOnly: true
example: Project Expense
nullable: true
href:
type: string
readOnly: true
example: /objects/construction/cost-type/2
asset:
type: object
properties:
id:
type: string
description: Asset ID
example: A001
nullable: true
key:
type: string
description: Asset key
example: '1'
nullable: true
name:
type: string
description: Asset name
readOnly: true
example: Laptop 1
nullable: true
href:
type: string
readOnly: true
example: /objects/fixed-assets/asset/1
contract:
type: object
properties:
id:
type: string
description: Contract ID
example: CON-0045-1
nullable: true
key:
type: string
description: Contract key
example: '12'
nullable: true
name:
type: string
description: Contract name
readOnly: true
example: ACME Widgets - Service
nullable: true
href:
type: string
readOnly: true
example: /objects/contracts/contract/12
audit:
type: object
properties:
createdDateTime:
description: Time of the submission
type: string
format: date-time
example: '2022-04-20T16:20:00Z'
readOnly: true
modifiedDateTime:
description: Time of the modification
type: string
format: date-time
example: '2022-04-20T16:20:00Z'
readOnly: true
createdBy:
description: User who created this
type: string
example: '1'
readOnly: true
nullable: true
modifiedBy:
description: User who modified this
type: string
example: '95'
readOnly: true
nullable: true
readOnly: true
time-timesheet-line:
type: object
description: >-
A single timesheet entry, including customer, project, number of hours,
billing rates, and cost rates.
properties:
key:
type: string
description: System-assigned unique key for the timesheet entry.
readOnly: true
example: '1411'
id:
type: string
description: This value is the same as the 'key' value for this object.
readOnly: true
example: '1411'
href:
type: string
description: Endpoint for the timesheet entry.
readOnly: true
example: /objects/time/timesheet-line/1411
timesheet:
type: object
description: The timesheet that the entry belongs to.
properties:
key:
type: string
description: The timesheet that the entry belongs to.
example: '11'
id:
type: string
description: ID of Timesheet.
example: '11'
href:
type: string
description: Endpoint of the timesheet
example: /objects/time/timesheet/11
readOnly: true
entryDate:
type: string
format: date
description: Date of the timesheet entry.
example: '2023-04-01'
quantity:
type: number
description: Number of hours or quantity.
example: 6
lineNumber:
type: integer
description: Line number to add entry to.
readOnly: true
example: 1
description:
type: string
description: Description.
example: Week of 04/01/23
nullable: true
notes:
type: string
description: Notes
example: Talked to client regarding project
nullable: true
state:
type: string
description: State
readOnly: true
example: approved
default: draft
enum:
- submitted
- approved
- partiallyApproved
- declined
- draft
- saved
- readyForApproval
timeType:
type: object
description: Time type
properties:
key:
type: string
description: Time type key
example: '1'
nullable: true
id:
type: string
description: Time type ID.
example: Salaries At Root
nullable: true
href:
type: string
example: /objects/time/time-type/1
readOnly: true
nullable: true
isBillable:
type: boolean
description: Set to 'true' if time can be billed to the customer.
example: true
default: false
isBilled:
type: string
description: Billed.
example: 'false'
enum:
- 'true'
- 'false'
- partial
default: 'false'
readOnly: true
statisticalJournal:
type: object
properties:
key:
type: string
description: Statistical journal key.
example: '7483'
readOnly: true
nullable: true
id:
type: string
description: Statistical journal ID.
example: TSSJ
readOnly: true
nullable: true
href:
type: string
readOnly: true
example: /objects/general-ledger/statistical-journal/7483
readOnly: true
billableUtilizedGLAccount:
type: object
properties:
key:
type: string
description: GL Account Key for Billable Utilized entry.
readOnly: true
example: '8293'
nullable: true
id:
type: string
description: GL Account ID for Billable Utilized entry
readOnly: true
example: '9293'
nullable: true
href:
type: string
readOnly: true
example: /objects/general-ledger/statistical-account/8293
readOnly: true
nonBillableUtilizedGLAccount:
type: object
properties:
key:
type: string
description: GL Account Key for Non-Billable Utilized entry.
readOnly: true
example: '8294'
nullable: true
id:
type: string
description: GL Account ID for Non-Billable Utilized entry.
readOnly: true
example: '9294'
nullable: true
href:
type: string
readOnly: true
example: /objects/general-ledger/statistical-account/8294
readOnly: true
billableNonUtilizedGLAccount:
type: object
properties:
key:
type: string
description: GL Account Key for Billable Non-Utilized entry.
readOnly: true
example: '8295'
nullable: true
id:
type: string
description: GL Account ID for Billable Non-Utilized entry.
readOnly: true
example: '9295'
nullable: true
href:
type: string
readOnly: true
example: /objects/general-ledger/statistical-account/8295
readOnly: true
nonBillableNonUtilizedGLAccount:
type: object
properties:
key:
type: string
description: GL Account Key for Non-Billable Non-Utilized entry.
readOnly: true
example: '8296'
nullable: true
id:
type: string
description: GL Account ID for Non-Billable Non-Utilized entry.
readOnly: true
example: '9296'
nullable: true
href:
type: string
readOnly: true
example: /objects/general-ledger/statistical-account/8296
readOnly: true
hours:
type: object
properties:
billable:
type: number
description: Billable hours.
example: 8
readOnly: true
nullable: true
nonBillable:
type: number
description: Non-billable hours.
example: 2
readOnly: true
nullable: true
approved:
type: number
description: Approved hours.
example: 10
readOnly: true
nullable: true
approvedBillable:
type: number
description: Approved billable hours.
example: 8
readOnly: true
nullable: true
approvedNonBillable:
type: number
description: Approved non-billable hours.
example: 2
readOnly: true
nullable: true
utilized:
type: number
description: Utilized hours.
example: 10
readOnly: true
nullable: true
nonUtilized:
type: number
description: Non-utilized hours.
example: 4
readOnly: true
nullable: true
approvedUtilized:
type: number
description: Approved utilized hours
example: 3
readOnly: true
nullable: true
approvedNonUtilized:
type: number
description: Approved non-utilized hours
example: 2
readOnly: true
nullable: true
readOnly: true
externalPayroll:
type: object
properties:
costRate:
type: number
description: External cost rate
example: 1
nullable: true
billingRate:
type: number
description: External billing rate
example: 1
nullable: true
amount:
type: string
description: Labor Amount
example: '90'
format: decimal-precision-2
nullable: true
employerTaxes:
type: number
description: Employer taxes
example: 15
nullable: true
fringes:
type: number
description: Fringes
example: 10
nullable: true
cashFringes:
type: number
description: Cash fringes
example: 2
nullable: true
laborClass:
type: object
description: Labor class used to track the timesheet.
properties:
key:
type: string
description: >-
System-assigned key for a class dimension associated with the
timesheet.
readOnly: true
example: '15'
nullable: true
id:
type: string
description: >-
Unique identifier for a class dimension associated with the
timesheet.
readOnly: true
example: LC001
nullable: true
name:
type: string
description: Class name associated with the timesheet.
readOnly: true
example: Labor Class
nullable: true
href:
type: string
readOnly: true
example: /objects/construction/labor-class/15
readOnly: true
laborShift:
type: object
description: Labor shift to track the timesheet.
properties:
key:
type: string
description: >-
System-assigned key for a labor shift associated with the
timesheet.
readOnly: true
example: '18'
nullable: true
id:
type: string
description: >-
Unique identifier for a labor shift associated with the
timesheet.
readOnly: true
example: LS001
nullable: true
name:
type: string
description: Labor shift associated with the timesheet.
readOnly: true
example: Labor Shift
nullable: true
href:
type: string
readOnly: true
example: /objects/construction/labor-shift/18
readOnly: true
laborUnion:
type: object
description: Labor union to track the timesheet.
properties:
key:
type: string
description: >-
System-assigned key for a labor union associated with the
timesheet.
readOnly: true
example: '20'
nullable: true
id:
type: string
description: >-
Unique identifier for a labor union associated with the
timesheet.
readOnly: true
example: LU001
nullable: true
name:
type: string
description: Labor union associated with the timesheet.
readOnly: true
example: Labor Union
nullable: true
href:
type: string
readOnly: true
example: /objects/construction/labor-union/20
readOnly: true
dimensions:
type: object
allOf:
- $ref: '#/components/schemas/dimension-ref'
- type: object
properties:
location:
type: object
properties:
key:
type: string
description: Location key
example: '1'
nullable: true
id:
type: string
description: Location
example: '1'
nullable: true
name:
readOnly: true
type: string
description: Location name
example: USA
nullable: true
href:
type: string
description: Endpoint for the location.
readOnly: true
example: /objects/company-config/location/1
department:
type: object
properties:
key:
type: string
description: Department key
example: '1'
nullable: true
id:
type: string
description: Department
example: '1'
nullable: true
name:
type: string
description: Department name
readOnly: true
example: IT
nullable: true
href:
type: string
description: Endpoint for the department.
readOnly: true
example: /objects/company-config/department/1
audit:
$ref: '#/components/schemas/audit'
time-timesheet:
type: object
description: Header information for timesheets.
properties:
key:
type: string
description: System-assigned unique key for the timesheet.
readOnly: true
example: '23'
id:
type: string
description: This value is same as the key value for this object.
readOnly: true
example: '23'
href:
type: string
readOnly: true
description: Endpoint for the timesheet.
example: /objects/time/timesheet/23
beginDate:
type: string
format: date
description: Begin date of the work period.
example: '2023-01-01'
nullable: false
endDate:
type: string
format: date
description: End date.
example: '2023-12-31'
readOnly: true
postingDate:
type: string
format: date
description: GL posting date.
example: '2023-01-01'
state:
type: string
description: State.
example: submitted
default: draft
enum:
- submitted
- approved
- partiallyApproved
- declined
- draft
- partiallyDeclined
- saved
unitOfMeasure:
type: string
description: Unit of measure.
readOnly: true
example: Hours
hoursInDay:
type: number
description: Hours in a day.
readOnly: true
example: 8
description:
type: string
description: Timesheet description.
example: Week of 2023-01-01
calculationMethod:
type: string
description: Calculation method.
example: hourly
readOnly: true
nullable: true
default: null
enum:
- null
- hourly
- salary
postActualLaborCost:
type: boolean
description: Post actual labor cost.
example: false
readOnly: true
employee:
type: object
description: The employee who did the work.
properties:
key:
type: string
description: Employee key.
example: '973'
id:
type: string
description: Employee ID.
example: E-001
href:
type: string
example: /objects/company-config/employee/973
readOnly: true
employeeContact:
type: object
description: The contact for the employee.
properties:
key:
type: string
description: System generated key for the contact.
readOnly: true
example: '977'
id:
type: string
description: System generated id for the contact.
readOnly: true
example: John Smith
firstName:
type: string
description: Employee First Name.
readOnly: true
example: John
lastName:
type: string
description: Employee Last Name.
readOnly: true
example: Smith
href:
type: string
example: /objects/company-config/contact/973
readOnly: true
readOnly: true
attachment:
type: object
description: Supporting document.
properties:
key:
type: string
description: Supporting document key.
example: '8420'
id:
type: string
description: Supporting document ID.
example: Attach-01
href:
type: string
readOnly: true
lines:
type: array
description: Time entries
items:
$ref: '#/components/schemas/time-timesheet-line'
audit:
$ref: '#/components/schemas/audit'
time-timesheet-recall-request:
description: recall request
type: object
properties:
key:
type: string
description: Key of the timesheet to recall.
nullable: false
example: '155096'
time-timesheet-recall-response:
description: recall response
type: object
properties:
key:
type: string
description: System-assigned unique key for the timesheet-
status:
type: string
description: recall status
example: completed
errorDescription:
type: string
description: Error description
nullable: true
example: Timesheet 1552 not found.
correction:
type: string
description: Error correction
nullable: true
errorCode:
type: object
description: Error code
nullable: true
time-timesheet-lineRequiredProperties:
type: object
required:
- entryDate
- quantity
time-timesheet-approval-record:
type: object
description: Record of employee timesheet approvals.
properties:
key:
type: string
description: System-assigned key for the timesheet approval record.
readOnly: true
example: '23'
id:
type: string
description: >-
Unique identifier of the timesheet approval record. This value is
the same as the key for this object.
readOnly: true
example: '23'
href:
type: string
readOnly: true
description: URL endpoint of the timesheet approval record.
example: /objects/time/timesheet-approval-record/23
approvalStage:
type: integer
description: The current stage of the approval cycle, from 1 to 5.
example: 1
readOnly: true
approvalType:
type: string
description: The approval type used for this record.
example: Department Approval
readOnly: true
approvalLevel:
type: string
description: The approval level required for this record.
example: '2'
readOnly: true
comments:
type: string
description: Comments provided by the reviewer (approver) of this record.
example: Approved by Admin in lieu of department manager.
nullable: true
readOnly: true
recordDate:
type: string
description: Date when the approval or decline action occurs.
format: date
example: '2021-01-23'
readOnly: true
state:
type: string
description: The state of the record in the approval cycle.
example: submitted
enum:
- submitted
- pendingApproval
- approved
- declined
readOnly: true
timesheet:
type: object
description: Timesheet related to this approval record.
properties:
key:
type: string
description: System-assigned key for the timesheet.
example: '101'
readOnly: true
id:
type: string
description: Unique identifier of the timesheet.
example: '101'
readOnly: true
href:
type: string
description: URL endpoint of the timesheet
example: /objects/time/timesheet/101
readOnly: true
readOnly: true
timesheetLine:
type: object
description: Individual timesheet entry.
properties:
key:
type: string
description: System-assigned key for the timesheet entry.
example: '142'
readOnly: true
id:
type: string
description: Unique identifier of the timesheet entry.
example: '142'
readOnly: true
lineNumber:
type: integer
description: Timesheet entry line number.
example: 3
readOnly: true
href:
type: string
description: URL endpoint of the timesheet entry.
example: /objects/time/timesheet-line/142
readOnly: true
readOnly: true
approvedBy:
type: object
description: The user who approved or declined the timesheet entry.
properties:
key:
type: string
readOnly: true
description: >-
System-assigned key of the user who approved or declined the
timesheet entry.
example: '202'
id:
type: string
readOnly: true
description: >-
Unique identifier of the user who approved or declined the
timesheet entry.
example: cjackson
href:
type: string
readOnly: true
description: >-
URL endpoint of the user who approved or declined the timesheet
entry.
example: /objects/company-config/user/202
readOnly: true
approver:
type: object
description: The user assigned to approve the timesheet entry.
properties:
key:
type: string
readOnly: true
description: >-
System-assigned key of the user assigned to approve the
timesheet entry.
example: '203'
id:
type: string
readOnly: true
description: >-
Unique identifier of the user assigned to approve the timesheet
entry.
example: jlee
href:
type: string
readOnly: true
description: >-
URL endpoint of the user assigned to approve the timesheet
entry.
example: /objects/company-config/user/203
readOnly: true
completedBy:
type: object
description: The user who made the timesheet entry change.
properties:
key:
type: string
readOnly: true
description: >-
System-assigned key for the user who made the timesheet entry
change.
example: '204'
id:
type: string
readOnly: true
description: >-
Unique identifier of the user who made the timesheet entry
change.
example: gadams
href:
type: string
readOnly: true
description: URL endpoint of the user who made the timesheet entry change.
example: /objects/company-config/user/204
readOnly: true
createdBy:
type: object
description: The user who created the timesheet approval request.
properties:
key:
type: string
readOnly: true
description: >-
System-assigned key for the user who created the timesheet
approval request.
example: '205'
id:
type: string
readOnly: true
description: >-
Unique identifier of the user who created the timesheet approval
request.
example: vluce
href:
type: string
readOnly: true
description: >-
URL endpoint of the user who created the timesheet approval
request.
example: /objects/company-config/user/205
readOnly: true
time-typeRequiredProperties:
type: object
required:
- id
status:
type: string
description: >-
Object status. Active objects are fully functional. Inactive objects are
essentially hidden and cannot be used or referenced.
enum:
- active
- inactive
default: active
example: active
time-time-type:
type: object
description: List of time types.
properties:
key:
type: string
description: System-assigned key for the time-type.
readOnly: true
example: '23'
id:
type: string
description: Same as name field.
example: Overtime
href:
type: string
description: Endpoint for the time-type.
readOnly: true
example: /objects/time/time-type/23
earningType:
type: object
properties:
href:
type: string
description: Endpoint for the earningtype.
readOnly: true
example: /objects/company-config/earning-type/23
key:
type: string
description: Earning type key.
example: '23'
nullable: true
id:
type: string
description: Earning type.
example: Salary
nullable: true
glAccount:
type: object
properties:
href:
type: string
description: Endpoint for the glaccount.
readOnly: true
example: /objects/general-ledger/account/12
key:
type: string
description: Time type GL account key.
example: '12'
nullable: true
id:
type: string
description: Time type GL account number.
example: '5001'
nullable: true
name:
type: string
description: Time type GL account name.
example: Labor
readOnly: true
nullable: true
offsetGLAccount:
type: object
properties:
href:
type: string
description: Endpoint for the offsetaccount.
readOnly: true
example: /objects/general-ledger/account/23
key:
type: string
description: Time type Offset account key.
example: '23'
nullable: true
id:
type: string
description: Time type Offset account number.
example: '5002'
nullable: true
name:
type: string
description: Time type Offset account name.
example: Labor Offset
readOnly: true
nullable: true
status:
$ref: '#/components/schemas/status'
company-config-earning-typeRequiredProperties:
type: object
required:
- id
company-config-earning-type:
type: object
description: Earning types for employee labor costs.
properties:
key:
type: string
description: Earning Type Key
readOnly: true
example: '1'
id:
type: string
description: Earning Type Name
example: Over time
billableGLAccount:
type: object
description: General ledger account associated with the earning-type.
properties:
key:
type: string
description: System-assigned key for the GL account.
example: '158'
nullable: true
id:
type: string
description: User-assigned number for the GL account.
example: '6775.30'
nullable: true
name:
type: string
description: Name of the GL account.
readOnly: true
nullable: true
example: Travel
href:
type: string
description: Endpoint for the GL account object.
readOnly: true
example: /objects/general-ledger/account/23
nonBillableGLAccount:
type: object
description: General ledger account associated with the earning-type.
properties:
key:
type: string
description: System-assigned key for the GL account.
nullable: true
example: '158'
id:
type: string
description: User-assigned number for the GL account.
nullable: true
example: '6774.30'
name:
type: string
description: Name of the GL account.
readOnly: true
nullable: true
example: Expense
href:
type: string
description: Endpoint for the GL account object.
readOnly: true
example: /objects/general-ledger/account/23
rateMultiplier:
type: string
description: Earning Type Name
nullable: true
example: '2'
calculationMethod:
type: string
description: calculation method
enum:
- hourly
- salary
example: hourly
default: salary
audit:
$ref: '#/components/schemas/audit'
expenses-employee-expenseRequiredProperties:
type: object
required:
- createdDate
- employee
- lines
expenses-employee-expense-line:
type: object
description: An individual expense on an employee expense report.
properties:
key:
type: string
description: System-assigned key for the employee expense line item.
readOnly: true
example: '312'
id:
type: string
description: Same as key.
readOnly: true
example: '312'
href:
type: string
readOnly: true
description: Endpoint for the employee expense line.
example: /objects/expenses/employee-expense-line/312
entryDate:
type: string
format: date
description: Date filed.
example: '2021-01-23'
nullable: true
baseCurrency:
type: string
description: Base currency of the expense.
readOnly: true
example: USD
baseAmount:
type: string
description: Amount of the expense in base currency.
readOnly: true
format: decimal-precision-2
example: '123.45'
reimbursementCurrency:
type: string
description: Reimbursement currency.
readOnly: true
example: CAD
reimbursementAmount:
type: string
description: Reimbursement amount.
readOnly: true
format: decimal-precision-2
example: '123.45'
txnCurrency:
type: string
description: Transaction currency. For multi-currency companies.
example: INR
nullable: true
txnAmount:
type: string
description: Transaction amount.
format: decimal-precision-2
example: '123.45'
totalSelected:
type: string
description: Amount selected to pay in transaction currency.
readOnly: true
format: decimal-precision-2
example: '123.45'
totalPaid:
type: string
description: Amount paid in transaction currency.
readOnly: true
format: decimal-precision-2
example: '123.45'
quantity:
type: string
description: Quantity for a rate-based expense, for example mileage.
format: decimal-precision-2
example: '5.75'
nullable: true
unitRate:
type: string
description: Monetary amount for a rate-based expense, for example mileage.
format: decimal-precision-2
example: '20.00'
nullable: true
paidTo:
type: string
description: Notes regarding to whom the amount was paid.
example: Hotel Westin
nullable: true
paidFor:
type: string
description: Notes regarding what the expense was for.
example: Attending conference
nullable: true
glAccount:
type: object
description: >-
General ledger account associated with the line item. Used when no
expense type is assigned.
properties:
key:
type: string
description: System-assigned key for the GL account.
example: '158'
id:
type: string
description: User-assigned number for the GL account.
example: '6775.30'
name:
type: string
description: Name of the GL account.
readOnly: true
example: Travel
href:
type: string
description: Endpoint for the GL account object.
readOnly: true
example: /objects/general-ledger/account/23
expenseType:
type: object
description: An expense type defined in the company.
properties:
key:
type: string
description: System-assigned key for the expense type.
example: '6000'
id:
type: string
description: User-assigned label for the expense type.
example: Meals
href:
type: string
description: Endpoint for the expense type object.
readOnly: true
example: /objects/expense-type/34
lineNumber:
type: number
description: Line number of the employee expense.
readOnly: true
example: 1
reimburseToBaseConversion:
type: object
description: Details of reimbursement currency to base currency conversion.
readOnly: true
properties:
exchangeRateDate:
type: string
format: date
description: Date the exchange rate conversion was applied.
example: '2021-01-23'
readOnly: true
exchangeRateTypeId:
type: string
description: Type of the expense line exchange rate.
example: '-1'
readOnly: true
exchangeRate:
type: string
description: Value of the expense line exchange rate.
readOnly: true
format: decimal-precision-5
example: '1.18999'
transactionToReimburseConversion:
type: object
description: Details of the conversion to base currency.
properties:
exchangeRate:
type: string
description: Exchange rate for the transaction.
format: decimal-precision-5
example: '65.095'
nullable: true
exchangeRateDate:
type: string
format: date
example: '2021-01-23'
description: Date for the exchange rate.
nullable: true
exchangeRateTypeId:
type: string
description: Exchange rate type.
example: '-1'
nullable: true
state:
type: string
description: Status of the employee expense report line.
enum:
- draft
- submitted
- partiallyApproved
- partiallyDeclined
- approved
- posted
- declined
- reversalPending
- reversed
- reversal
- paid
- confirmed
- voided
- partiallyPaid
- saved
- null
default: submitted
nullable: true
readOnly: true
example: draft
isBillable:
type: boolean
default: false
description: Indicates whether a line item is billable.
example: false
isBilled:
type: boolean
default: false
description: Indicates whether a line item is billed.
readOnly: true
example: false
form1099:
type: object
description: Form 1099 information for the line item.
properties:
isForm1099:
type: string
description: If set to true, the line item amount is added to the form 1099.
example: 'true'
nullable: true
type:
type: string
description: Type of form 1099.
example: MISC
nullable: true
box:
type: string
description: Box value of form 1099.
example: '3'
nullable: true
paymentType:
type: object
properties:
key:
type: string
description: System-assigned key for the expense payment type.
example: '23'
nullable: true
id:
type: string
description: Same as key.
example: Non-reimburse
nullable: true
isNonReimbursable:
type: boolean
default: false
description: Non-reimbursable expense.
readOnly: true
example: false
href:
type: string
example: /objects/expenses/employee-expense-payment-type/23
readOnly: true
audit:
$ref: '#/components/schemas/audit'
dimensions:
type: object
allOf:
- $ref: '#/components/schemas/dimension-ref'
- type: object
properties:
location:
type: object
properties:
key:
type: string
description: Location key
example: '1'
nullable: true
id:
type: string
description: Location
example: '1'
nullable: true
name:
readOnly: true
type: string
description: Location name
example: USA
nullable: true
href:
type: string
readOnly: true
example: /objects/company-config/location/1
department:
type: object
properties:
key:
type: string
description: Department key
example: '1'
nullable: true
id:
type: string
description: Department
example: '1'
nullable: true
name:
type: string
description: Department name
readOnly: true
example: IT
nullable: true
href:
type: string
readOnly: true
example: /objects/company-config/department/1
employeeExpense:
type: object
properties:
id:
type: string
example: '124'
key:
type: string
example: '124'
href:
type: string
readOnly: true
description: Endpoint for the employee expense.
example: /objects/expenses/employee-expense/124
expenses-employee-expense:
type: object
description: Expense report for an employee.
properties:
key:
type: string
description: >-
System-assigned key for the employee expense. Used to identify the
employee expense in URLs or JSON bodies for all operations on the
employee expense.
readOnly: true
example: '124'
id:
type: string
description: >-
Same as key. API operations should use the key property to refer to
employee expenses-
readOnly: true
example: '124'
createdDate:
type: string
format: date
example: '2023-11-11'
description: Date the employee expense was created.
nullable: false
employee:
type: object
description: Employee that incurred the expense.
properties:
key:
type: string
description: System-assigned unique key for the employee.
example: '12345'
id:
type: string
description: Unique ID of the employee.
example: EMP-025
href:
type: string
readOnly: true
description: Endpoint for the employee.
example: /objects/company-config/employee/12345
employeeContact:
type: object
description: The contact for the employee.
properties:
key:
type: string
description: System generated key for the contact.
readOnly: true
example: '977'
id:
type: string
description: Unique identifier for the contact.
readOnly: true
example: Thomas, Glenn
firstName:
type: string
description: First name of the employee.
readOnly: true
example: Glenn
lastName:
type: string
description: Last name of the employee.
readOnly: true
example: Thomas
href:
type: string
example: /objects/company-config/contact/973
readOnly: true
readOnly: true
state:
type: string
description: >-
Status of the employee expense. Expenses are posted to the general
ledger when approved.
enum:
- draft
- submitted
- partiallyApproved
- partiallyDeclined
- approved
- posted
- declined
- reversalPending
- reversed
- reversal
- paid
- confirmed
- voided
- partiallyPaid
default: submitted
example: draft
basePayment:
type: object
description: Base payment for the employee expense report.
properties:
baseCurrency:
type: string
description: Base currency for the employee expense report.
example: USD
paidDate:
type: string
format: date
example: '2023-11-12'
description: Date the employee expense was fully paid.
readOnly: true
totalEntered:
type: string
description: Total transaction amount.
format: decimal-precision-2
readOnly: true
example: '123.45'
totalPaid:
type: string
description: Total amount paid.
format: decimal-precision-2
readOnly: true
example: '123.45'
totalDue:
type: string
description: Total amount due.
format: decimal-precision-2
readOnly: true
example: '123.45'
totalSelected:
type: string
description: Amount selected for reimbursement.
format: decimal-precision-2
readOnly: true
example: '110.00'
reimbursement:
type: object
description: Reimbursement
properties:
reimbursementCurrency:
type: string
description: Reimbursement currency.
example: EUR
totalEntered:
type: string
description: Total reimbursable amount.
readOnly: true
format: decimal-precision-2
example: '123.16'
totalPaid:
type: string
description: Total amount paid.
readOnly: true
format: decimal-precision-2
example: '123.16'
totalDue:
type: string
description: Total amount due.
readOnly: true
format: decimal-precision-2
example: '123.16'
totalSelected:
type: string
description: Amount selected for reimbursement.
readOnly: true
format: decimal-precision-2
example: '123.16'
expenseReportNumber:
type: string
description: Report number associated with the employee expense.
example: EXP-00001
expenseSummary:
type: object
description: Expense summary that this expense is reported on.
properties:
key:
type: string
description: System-assigned key for the employee expense summary.
example: '334'
id:
type: string
description: Same as key.
example: '334'
title:
type: string
description: Title of the expense summary.
readOnly: true
example: Expenses 2023/01/31 batch
postingDate:
type: string
format: date
example: '2021-01-23'
description: GL posting date.
href:
type: string
readOnly: true
description: Endpoint for the employee expense summary.
example: /objects/expenses/employee-expense-summary/12345
nonReimbursable:
type: object
description: Non-reimbursable portion of the expense.
readOnly: true
properties:
baseTotalEntered:
type: string
description: Non-reimbursable amount in base currency.
readOnly: true
format: decimal-precision-2
example: '123.45'
reimbursementTotalEntered:
type: string
description: Total non-reimbursable amount in the reimbursement currency.
readOnly: true
format: decimal-precision-2
example: '123.45'
memo:
type: string
description: Memo.
example: Paid to employee
description:
type: string
description: Reason for the expense.
example: Supplies for customer training
reclassificationNotes:
type: string
description: Reason for the reclassification.
example: Classified as supplies, not travel expense
attachment:
type: object
description: >-
An attachment for employee expenses could be scanned or digital
receipts.
properties:
key:
type: string
description: System-assigned key for the attachment.
example: '1'
id:
type: string
description: Unique ID of the attachment.
example: '1'
href:
type: string
description: Endpoint for the attachment.
example: /objects/company-config/attachment/12345
readOnly: true
audit:
type: object
allOf:
- $ref: '#/components/schemas/audit'
- type: object
properties:
createdDateTime:
type: string
description: Time of the submission.
format: date-time
example: '2014-01-08T11:28:12Z'
readOnly: true
lines:
type: array
description: Line items of the employee expense.
items:
$ref: '#/components/schemas/expenses-employee-expense-line'
expenses-employee-expense-lineRequiredProperties:
type: object
required:
- txnAmount
expenses-employeeExpenseSummaryRequiredProperties:
type: object
required:
- name
- postingDate
expenses-employee-expense-summary:
type: object
description: Collection of expense transactions, grouped together for processing.
properties:
key:
type: string
description: System-assigned key for the employee expense summary.
readOnly: true
example: '13'
id:
type: string
description: Same as key.
readOnly: true
example: '13'
name:
type: string
description: Title of the summary.
example: Expenses - Expenses (USD) Q3 Batch
postingDate:
type: string
description: GL posting date
format: date
example: '2021-01-23'
totalAmount:
type: string
description: Total amount of all employee expenses in the summary.
example: '100.00'
readOnly: true
format: decimal-precision-2
nullable: true
state:
type: string
enum:
- open
- closed
description: State of the employee expense summary.
example: open
default: open
recordType:
type: string
description: Record type
enum:
- expense
- adjustment
- reimbursement
example: expense
readOnly: true
summaryCreationType:
type: string
description: >-
If set to manual, then the summary was created by a user and if set
to system, then the summary was created by Intacct based on the
summary frequency.
enum:
- system
- manual
default: manual
example: manual
readOnly: true
bankAccount:
type: object
description: Bank account.
readOnly: true
properties:
key:
type: string
description: System-assigned key for the GL account.
example: '1'
readOnly: true
nullable: true
id:
type: string
description: Identifier for the GL account.
example: BOA
readOnly: true
nullable: true
href:
type: string
description: URL for the bankaccount.
readOnly: true
example: /objects/cash-management/bank-account/1
preventGLPosting:
type: boolean
description: Not for GL posting
example: false
default: false
readOnly: true
href:
type: string
description: Endpoint for the employee expense summary.
readOnly: true
example: /objects/expenses/employee-expense-summary/13
status:
$ref: '#/components/schemas/status'
expenses-employee-expense-typeRequiredProperties:
type: object
required:
- id
- description
- glAccount
expenses-unit-rate:
type: object
description: unit rate for a specific employee expense type
properties:
key:
type: string
description: System-assigned key for the unit-rate.
readOnly: true
example: '23'
id:
type: string
description: System-assigned id for the unit-rate.
readOnly: true
example: '23'
href:
type: string
description: Endpoint for the unit-rate.
readOnly: true
example: /objects/expenses/unit-rate/23
rate:
type: string
description: Unit rate.
format: decimal-precision-4
example: '10'
nullable: false
startDate:
type: string
description: Start date.
nullable: false
example: '2021-01-23'
format: date
audit:
$ref: '#/components/schemas/audit'
employeeExpenseType:
type: object
readOnly: true
properties:
key:
type: string
readOnly: true
example: '47'
id:
type: string
readOnly: true
example: '47'
href:
type: string
description: Endpoint of the employee expense type
example: /objects/employee-expense-type/47
readOnly: true
expenses-employee-expense-type:
type: object
description: Information about an employee expense type.
properties:
key:
type: string
description: System-assigned key for the employee expense type.
readOnly: true
example: '47'
id:
type: string
description: >-
Name or other unique identifier for the employee expense type. Same
as name.
example: Travel
status:
$ref: '#/components/schemas/status'
description:
type: string
description: Description of the employee expense type.
example: Non-reimbursable expense for travel
glAccount:
type: object
description: GL account assigned to the employee expense type.
properties:
key:
type: string
description: System-assigned key for the GL account.
example: '5500'
id:
type: string
description: GL account number.
example: Travel expenses
name:
type: string
description: Name of the GL account.
readOnly: true
example: Automobile expenses
href:
type: string
description: Endpoint for the GL account.
readOnly: true
example: /objects/general-ledger/account/23
offsetGLAccount:
type: object
description: >-
Offset account assigned to the employee expense type or the default
GL account for employee liabilities.
properties:
key:
type: string
description: System-assigned key for the offset GL account.
nullable: true
example: '6000'
id:
type: string
description: Account number of the offset GL account.
nullable: true
example: Offset travel expenses
name:
type: string
description: Name of the offset GL account.
readOnly: true
nullable: true
example: Automobile expenses - offset
href:
type: string
description: Endpoint for the offset GL account.
readOnly: true
example: /objects/general-ledger/account/12
item:
type: object
description: Defined category of expense, such as software, meals or training.
properties:
key:
type: string
description: System-assigned key for the item.
nullable: true
example: '1'
id:
type: string
description: Unique identifier for the item.
nullable: true
example: '10'
name:
type: string
description: Name of the item.
readOnly: true
nullable: true
example: PC
href:
type: string
description: Endpoint for the item.
readOnly: true
example: /objects/inventory-control/item/311
unitCurrency:
type: string
description: >-
Currency of the transaction amount for multi-currency companies and
rate-based expenses-
nullable: true
example: USD
form1099:
type: object
description: Form 1099 information for the employee expense type.
readOnly: true
properties:
type:
type: string
description: Type of form 1099.
readOnly: true
nullable: true
example: MISC
box:
type: string
description: Box value of form 1099.
readOnly: true
nullable: true
example: '3'
audit:
$ref: '#/components/schemas/audit'
unitRates:
type: array
description: Line items of the employee expense type.
items:
$ref: '#/components/schemas/expenses-unit-rate'
employeeExpensePaymentTypeRequiredProperties:
type: object
required:
- id
expenses-employee-expense-payment-type:
type: object
description: >-
User-defined payment type for a line item of an employee expense report
or an expense adjustment.
properties:
key:
type: string
description: System-assigned key for the employee expense payment type.
readOnly: true
example: '10'
id:
type: string
description: Employee expense payment type ID.
example: Non-reimburse
description:
type: string
description: Description of the employee expense payment type.
example: Non-reimbursable payment
nullable: true
isNonReimbursable:
type: boolean
default: false
description: Non-reimbursable employee expense payment type.
example: true
offsetGLAccount:
type: object
description: Offset account assigned to the employee expense payment type.
properties:
key:
type: string
description: System-assigned key for the offset GL account.
example: '70'
nullable: true
id:
type: string
description: Account number of the offset GL account.
example: '2420'
nullable: true
name:
type: string
description: Name of the offset GL account.
readOnly: true
example: EE-Office Supplies
nullable: true
href:
type: string
description: Endpoint for the offset GL account.
readOnly: true
example: /objects/general-ledger/account/70
href:
type: string
description: Endpoint for the offset employee expense payment type.
readOnly: true
example: /objects/expenses/employee-expense-payment-type/10
status:
$ref: '#/components/schemas/status'
audit:
$ref: '#/components/schemas/audit'
company-config-employeeRequiredProperties:
type: object
required:
- primaryContact
company-config-employee-rate:
type: object
description: List of employee cost rates, including history.
properties:
key:
type: string
description: System-assigned key for the employee-rate.
readOnly: true
example: '23'
id:
type: string
description: Employee rate ID.
readOnly: true
example: '23'
href:
type: string
description: Endpoint for the employee-rate.
readOnly: true
example: /objects/projects/employee-rate/23
hourlyRate:
type: string
description: Hourly rate
format: decimal-precision-2
example: '50'
annualSalary:
type: string
description: Annual salary.
nullable: true
example: '100000'
startDate:
type: string
format: date
description: Start date of hourly rate or annual salary.
example: '2023-04-01'
endDate:
type: string
format: date
description: End date of of hourly rate or annual salary.
example: '2023-04-01'
employee:
type: object
readOnly: true
properties:
id:
type: string
description: Employee ID.
readOnly: true
example: '111'
key:
type: string
description: Employee Key
example: '1'
readOnly: true
name:
type: string
description: Employee name
readOnly: true
example: John Doe
href:
type: string
description: Endpoint for the emp.
readOnly: true
example: /objects/company-config/employee/23
audit:
$ref: '#/components/schemas/audit'
company-config-employee:
type: object
description: Information about an employee.
properties:
key:
type: string
description: System-assigned unique key for the employee.
readOnly: true
example: '3086'
id:
type: string
description: Unique ID of the employee.
example: jsmith
name:
type: string
description: Employee contact name.
example: johnsmith
startDate:
type: string
format: date
example: '2021-04-30'
description: Employment start date.
nullable: true
jobTitle:
type: string
description: Job title
nullable: true
example: VP Sales
status:
type: string
description: Status
enum:
- active
- inactive
example: active
default: active
birthDate:
type: string
description: Employee date of birth.
format: date
nullable: true
example: '1984-04-13'
endDate:
type: string
description: Employment end date.
format: date
nullable: true
example: '2026-04-30'
postActualCostWithVariance:
type: boolean
description: >-
Set to `true` to indicate that the actual cost with variance is
posted when earning type is Salary.
example: false
default: false
mergePaymentRequests:
type: boolean
description: Set to `true` to indicate system can merge payment requests.
example: true
default: true
sendAutomaticPaymentNotification:
type: boolean
description: >-
Set to `true` to indicate system can send automatic payment
notifications.
example: true
default: false
manager:
type: object
description: Manager of the employee.
properties:
key:
type: string
nullable: true
example: '1'
id:
type: string
nullable: true
example: jsmith
href:
type: string
readOnly: true
example: /objects/company-config/employee/1
gender:
type: string
description: Gender
enum:
- null
- female
- male
nullable: true
default: null
example: female
location:
type: object
description: >-
Employee location. Required only when an employee is created at the
top level in a multi-entity, multi-base-currency company.
readOnly: true
properties:
key:
type: string
nullable: true
example: '5'
id:
type: string
nullable: true
example: US
name:
type: string
nullable: true
readOnly: true
example: USA
href:
type: string
readOnly: true
example: /objects/company-config/location/1
department:
type: object
description: Department that the employee is associated with.
properties:
key:
type: string
nullable: true
example: '1'
id:
type: string
nullable: true
example: HR
name:
type: string
readOnly: true
nullable: true
example: HR
href:
type: string
readOnly: true
example: /objects/company-config/department/1
class:
type: object
description: Class that the employee is associated with.
properties:
key:
type: string
nullable: true
example: '1'
id:
type: string
nullable: true
example: A
name:
type: string
readOnly: true
nullable: true
example: A
href:
type: string
readOnly: true
example: /objects/company-config/class/1
defaultCurrency:
nullable: true
type: string
description: Currency
example: USD
primaryContact:
type: object
description: The contact object that represents the employee.
properties:
key:
type: string
description: System-assigned unique key of the contact.
example: '12345'
id:
type: string
nullable: true
example: A
name:
type: string
example: john
nullable: true
readOnly: true
firstName:
type: string
nullable: true
example: john
readOnly: true
lastName:
type: string
nullable: true
example: smith
readOnly: true
href:
type: string
readOnly: true
description: Endpoint for the contact.
example: /objects/company-config/contact/12345
employeeType:
type: object
description: employeeType
properties:
key:
type: string
nullable: true
example: '1'
id:
type: string
nullable: true
example: hourly
href:
type: string
readOnly: true
example: /objects/company-config/employee-type/1
earningType:
type: object
description: earningType
properties:
key:
type: string
nullable: true
example: '1'
id:
type: string
nullable: true
example: hourly
href:
type: string
example: /objects/company-config/earning-type/1
SSN:
type: string
nullable: true
description: Employee social security number. Do not include dashes.
example: '078051120'
employeePosition:
type: object
description: This is a mapping for position and employee
properties:
key:
type: string
nullable: true
example: '1'
id:
type: string
nullable: true
example: permanent
name:
type: string
nullable: true
readOnly: true
example: permanent
href:
type: string
readOnly: true
example: /objects/company-config/employee-position/1
terminationType:
type: string
enum:
- null
- voluntary
- involuntary
- deceased
- disability
- retired
description: Termination type
nullable: true
default: null
example: voluntary
form1099:
type: object
description: Form 1099 information for employee.
properties:
name:
type: string
description: employee name as it appears on the 1099 form.
nullable: true
example: John Smith
type:
type: string
description: Type of form 1099.
nullable: true
example: MISC
box:
type: string
description: Box value of form 1099.
nullable: true
example: '3'
ach:
type: object
description: ACH details
properties:
enabled:
type: boolean
description: Enable ACH.
example: false
bankRoutingNumber:
type: string
nullable: true
description: ACH bank routing number.
example: '111111111'
accountNumber:
type: string
nullable: true
description: Account number.
example: '11111111111'
accountType:
type: string
nullable: true
description: Account type.
example: checkingAccount
enum:
- null
- checkingAccount
- savingsAccount
remittanceType:
type: string
nullable: true
description: Account classification.
example: personalPPD
enum:
- null
- personalPPD
- businessCCD
- businessCTX
isPlaceholderResource:
type: boolean
description: Placeholder resource.
example: false
default: false
filePaymentService:
type: string
nullable: true
description: File payment service type.
example: ach
enum:
- null
- ach
- bankFile
- none
default: none
preferredPaymentMethod:
type: string
example: cash
enum:
- null
- printedCheck
- eft
- cash
- ach
description: Preferred payment method
nullable: true
default: null
attachmentFolder:
type: object
description: Attachment folder name
properties:
key:
type: string
example: '1'
id:
type: string
nullable: true
example: test
href:
type: string
example: /objects/company-config/folder/1
employeeRates:
type: array
description: costRates
items:
$ref: '#/components/schemas/company-config-employee-rate'
positionSkills:
description: Array of positions and skills attached to employee object.
type: array
items:
type: object
properties:
key:
type: string
example: '7'
id:
type: string
example: Care giver
href:
type: string
description: URL of the position skill
example: /objects/projects/position-skill/7
readOnly: true
company-config-employee-typeRequiredProperties:
type: object
required:
- id
company-config-employee-type:
type: object
description: Employee type
properties:
key:
type: string
description: System-assigned key for the employee type.
readOnly: true
example: '23'
id:
type: string
description: Unique identifier for the employee type.
example: Contractor
href:
type: string
description: URL for the employee-type.
readOnly: true
example: /objects/company-config/employee-type/23
parent:
type: object
properties:
href:
type: string
description: URL for the employee-type.
readOnly: true
example: /objects/company-config/employee-type/7
id:
type: string
description: Employee type of the parent reference.
nullable: true
example: Contractor
key:
type: string
description: Employee type key of the parent reference.
nullable: true
example: '7'
form1099:
type: object
description: Form 1099 information.
readOnly: true
properties:
type:
type: string
description: Type of form 1099.
readOnly: true
nullable: true
example: MISC
box:
type: string
description: Box value of form 1099.
readOnly: true
nullable: true
example: '3'
status:
$ref: '#/components/schemas/status'
audit:
$ref: '#/components/schemas/audit'
company-config-employee-groupRequiredProperties:
type: object
required:
- id
- name
company-config-employee-group:
type: object
description: >-
A specified set of employees, or a set of employees that meet certain
criteria.
properties:
key:
type: string
description: System-assigned unique key for the employee group.
readOnly: true
example: '23'
id:
type: string
description: >-
Employee group ID. Displayed together with the group name in Sage
Intacct (_ID_--_Name_). Employee group IDs cannot be changed.
example: MGR
href:
type: string
description: Endpoint for the employee group.
readOnly: true
example: /objects/company-config/employee-group/23
name:
type: string
description: >-
Employee group name. Displayed together with the group ID in Sage
Intacct (_ID_--_Name_).
example: Sr. Managers
description:
type: string
description: Description of the employee group.
example: Managers G10 and above
nullable: true
groupType:
type: string
description: >
Group membership type. The group type and options that you select
determine which employees will be included in report data when you
filter on this employee group.
If you are creating financial reports that show employees in rows or
columns, your selection will also determine the column headings and
row headings that will appear, and the order in which they will be
listed.
* `specific` - Specify the employees to include and their order in
the `members` array.
* `all` - All employees that match the `memberFilter` criteria.
example: specific
enum:
- all
- specific
default: all
sortOrder:
type: string
description: >-
Sort order for employees that match the `memberFilter`. Only
applicable when `groupType` = `all`.
example: ascending
enum:
- ascending
- descending
default: ascending
maxMatches:
type: string
description: >-
The maximum number of employees that match the `memberFilter` to
include in the employee group. Only applicable when `groupType` =
`all`.
example: '10'
nullable: true
sortField:
type: string
description: select sort field for employee group.
example: EMPLOYEEID
default: EMPLOYEEID
isDimensionStructure:
type: boolean
description: >-
If this checked, creating a dimension structure from a group enables
you to add the group to the rows or columns of a financial report.
default: false
example: false
conditionType:
type: string
description: The condition type for filters defined to create the class group.
enum:
- and
- or
- expression
default: and
example: and
expression:
type: string
description: >-
If conditionType is expression, you can manually add the text of the
expression in this field.
nullable: true
example: (1 AND 2)
memberFilter:
type: array
description: >-
One or more filters to select the employees to include in the
employee group.
nullable: true
items:
title: children
properties:
field:
type: string
description: >-
Employee field to filter on, such as Employee ID or Country
Code.
example: STATUS
operator:
type: string
description: Comparison operator.
enum:
- equals
- doesNotEqual
- isGreaterThan
- isLessThan
- isOneOf
- isNotOneOf
- isEmpty
- isNotEmpty
- contains
- isCurrentUser
default: isOneOf
example: isOneOf
value:
type: string
description: Value to compare against.
example: inactive
groupMembers:
type: array
items:
type: object
properties:
key:
type: string
description: Members.
example: '1'
id:
type: string
description: Members.
example: jsmith
href:
type: string
description: Endpoint for the employee.
readOnly: true
example: /objects/company-config/employee/23
status:
type: string
example: active
readOnly: true
sortOrder:
type: string
description: Sort order.
example: '0'
readOnly: true
employeeContact:
type: object
readOnly: true
properties:
key:
type: string
description: System generated key for the contact.
example: '973'
readOnly: true
id:
type: string
description: Name of the employee.
readOnly: true
example: Thomas, Glenn
href:
type: string
description: Endpoint for the contact.
readOnly: true
example: /objects/company-config/contact/23
audit:
$ref: '#/components/schemas/audit'
responses:
400error:
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/error-response'
securitySchemes:
OAuth2:
description: Sage Intacct OAuth 2.0 authorization code flow
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://api.intacct.com/ia/api/v1-beta2/oauth2/authorize
tokenUrl: https://api.intacct.com/ia/api/v1-beta2/oauth2/token
refreshUrl: https://api.intacct.com/ia/api/v1-beta2/oauth2/token
scopes: {}