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.
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.
Subscription | Time & Expenses |
---|---|
User type | Business, Project Manager, or Employee |
Permissions | List and View timesheets |
OK
Bad Request
{- "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
}
}
Creates a new timesheet line.
Subscription | Time & Expenses |
---|---|
User type | Business, Project Manager, or Employee |
Permissions | Add timesheets |
timesheet-line
entryDate required | string <date> Date of the timesheet line entry. Example: "2024-04-01" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
quantity required | number Number of hours or quantity. Example: 6 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object The timesheet to which the line belongs. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
description | string or null Description of the individual timesheet line. Example: "04/01/24: work on Project Z." | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
notes | string or null Notes about the timesheet line. Example: "Talked to client regarding project" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object Categorizes the time. Each company's time types can differ and can include salary, contract hours, overtime, vacation, travel time, and so on. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
isBillable | boolean Default: false Indicates whether the line can be billed. Set to Example: true | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object External payroll details, such as information from Sage Intacct Construction Payroll. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Created
Bad Request
{- "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": "2024-04-01",
- "quantity": 6,
- "description": "Week of 04/01/24",
- "notes": "Talked to client regarding project",
- "timeType": {
- "key": "1"
}, - "isBillable": true
}
{- "ia::result": {
- "key": "4108",
- "id": "4108",
- "href": "/objects/time/timesheet-line/4108"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Returns detailed information for a specified timesheet line.
Subscription | Time & Expenses |
---|---|
User type | Business, Project Manager, or Employee |
Permissions | List and View timesheets |
key required | string System-assigned unique key for the timesheet line. |
OK
Bad Request
{- "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": "2024-04-01",
- "quantity": 6,
- "lineNumber": 1,
- "description": "Week of 04/01/24",
- "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
}
}
Updates an existing timesheet line by setting field values. Any fields not provided remain unchanged. Whether approvals are turned on for a company, and where a timesheet is in the approval process determines if a timesheet line can be edited.
Subscription | Time & Expenses |
---|---|
User type | Business, Project Manager, or Employee |
Permissions | Edit timesheets |
key required | string System-assigned unique key for the timesheet line. |
object The timesheet to which the line belongs. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
entryDate | string <date> Date of the timesheet line entry. Example: "2024-04-01" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
quantity | number Number of hours or quantity. Example: 6 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
description | string or null Description of the individual timesheet line. Example: "04/01/24: work on Project Z." | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
notes | string or null Notes about the timesheet line. Example: "Talked to client regarding project" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object Categorizes the time. Each company's time types can differ and can include salary, contract hours, overtime, vacation, travel time, and so on. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
isBillable | boolean Default: false Indicates whether the line can be billed. Set to Example: true | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object External payroll details, such as information from Sage Intacct Construction Payroll. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
OK
Bad Request
{- "key": "40",
- "description": "Week of 04/01/24",
- "notes": "Talked to client regarding project"
}
{- "ia::result": {
- "key": "40",
- "id": "40",
- "href": "/objects/time/timesheet-line/40"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalFailure": 0
}
}
Deletes a timesheet line. If a timesheet has posted to the General Ledger or has been invoiced, it cannot be deleted.
Subscription | Time and Expenses |
---|---|
User type | Business, Project Manager, or Employee |
Permissions | Delete Timesheets |
key required | string System-assigned unique key for the timesheet line. |
No Content
Bad Request
{- "ia::result": {
- "ia::error": {
- "code": "invalidRequest",
- "message": "A POST request requires a payload",
- "errorId": "REST-1028",
- "additionalInfo": {
- "messageId": "IA.REQUEST_REQUIRES_A_PAYLOAD",
- "placeholders": {
- "OPERATION": "POST"
}, - "propertySet": { }
}, - "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
}
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 0,
- "totalError": 1
}
}
Queries an object for filtered data.
object | string Object type to query, in the form Example: "time/timesheet-line" | ||||||||
fields | Array of strings List of fields to include in the response. Can be any combination of these:
Example: ["key","id","max:vendor.creditLimit"] | ||||||||
Array of equal (object) or not equal (object) or less than (object) or (less than or equal (object)) or greater than (object) or (greater than or equal (object)) or in (object) or not in (object) or between (object) or not between (object) or contains (object) or does not contain (object) or starts with (object) or does not start with (object) or ends with (object) or does not end with (object) Filter conditions to select the objects to return based on their field values. You use operators and conditions to build your filter, such as Example: [{"$eq":{"status":"active"}},{"$gt":{"totalDue":"1000"}},{"$contains":{"name":"Acme"}}] | |||||||||
Array Any of: Field value must be equal to this specified value. For date fields, you can use these macro values that are relative to the current date or the
These are most useful for queries that you want to save and use repeatedly, such as for views or reports. Just change the For example,
| |||||||||
filterExpression | string Default: "and" Logical operators to apply when there are multiple filter conditions. The conditions in the Shortcuts:
Example: "(1 and 2) or 3" | ||||||||
| |||||||||
Array of objects Set the order of the results by specifying field names to sort by and whether they should be in ascending or descending order. Example: [{"totalDue":"asc"},{"lastPaymentMadeDate":"desc"}] | |||||||||
Array
| |||||||||
start | integer First record of the result set to include in the response. Example: 1 | ||||||||
size | integer Number of records to include in the response. Example: 100 |
OK
Bad Request
{- "object": "accounts-payable/vendor",
- "fields": [
- "id",
- "name",
- "status",
- "href"
], - "filters": [
- {
- "$eq": {
- "status": "active"
}
}, - {
- "$eq": {
- "billingType": "openItem"
}
}
], - "filterExpression": "1 and 2",
- "orderBy": [
- {
- "id": "asc"
}
]
}
{- "ia::result": [
- {
- "id": "Vend-00002",
- "name": "Test vendor",
- "status": "active",
- "href": "/objects/accounts-payable/vendor/85"
}, - {
- "id": "VEND-00010",
- "name": "Design Works",
- "status": "active",
- "href": "/objects/accounts-payable/vendor/111"
}
], - "ia::meta": {
- "totalCount": 2,
- "start": 1,
- "pageSize": 100,
- "next": null,
- "previous": null
}
}