Timesheet Export
This documentation is for LiquidPlanner New: next.liquidplanner.com
Timesheets can be exported via API in a JSON format or in an excel format, similar to how it’s done in the UI
All available columns are included in the export. If no filter parameters are provided, all time entries created in the last 30 days are included in the export. The Token Owner must have Timesheet Reviewer access or above to pull timesheets via API.
Export to Excel
Use this endpoint to export a Timesheet into an excel file:
https://next.liquidplanner.com/api/workspaces/<workspace id>/timesheet/v1/export/xlsx
Export in JSON format
Use this endpoint to export a Timesheet in a JSON format:
https://next.liquidplanner.com/api/workspaces/<workspace id>/timesheet/v1/export/json
Supported Methods
GET
Sample Response
The response for a timesheet export pulled in JSON format includes two sections: Headers and Data.
The Headers section includes pairs of keys and display names in which a key is the name of the field that is used in the API data and the corresponding displayName is the name of the field as displayed in the app. In the below example, Color is the name of a custom field in the app and 4089 is the ID of this custom field. While the custom field’s name may be changed in the app, the ID remains static preventing your integration from breaking when a field is renamed in the UI.
{"key": "4089",
"displayName": "Color"}
The Data section contains the data about each time entry referencing key (described above) as an attribute.
Below is an example of a sample response when a timesheet is pulled in a JSON format:
{
"headers": [
{
"key": "date",
"displayName": "Date"
},
{
"key": "task",
"displayName": "Task"
},
{
"key": "assignment",
"displayName": "Assignment"
},
{
"key": "costCode",
"displayName": "Cost Code"
},
{
"key": "costCodeBillable",
"displayName": "Billable"
},
{
"key": "loggedHours",
"displayName": "Logged (h)"
},
{
"key": "loggedHoursBillable",
"displayName": "Logged Billable (h)"
},
{
"key": "loggedHoursNonBillable",
"displayName": "Logged Non-Bill (h)"
},
{
"key": "loggedHoursCost",
"displayName": "Logged Cost"
},
{
"key": "loggedHoursCostBillable",
"displayName": "Logged Cost Billable"
},
{
"key": "loggedHoursCostNonBillable",
"displayName": "Logged Cost Non-Bill"
},
{
"key": "for",
"displayName": "For"
},
{
"key": "tsNote",
"displayName": "TS Note"
},
{
"key": "month",
"displayName": "Month"
},
{
"key": "week",
"displayName": "Week"
},
{
"key": "project",
"displayName": "Project"
},
{
"key": "folder",
"displayName": "Folder"
},
{
"key": "assignmentDone",
"displayName": "Assignment Done"
},
{
"key": "4089",
"displayName": "Color"
}
],
"data": [
{
"date": "2022/10/17",
"task": "Sample Task 1",
"assignment": "Step 1",
"costCode": "General Task Work",
"costCodeBillable": "Yes",
"loggedHours": "1.00",
"loggedHoursBillable": "1.00",
"loggedHoursNonBillable": "",
"loggedHoursCost": "$100.00",
"loggedHoursCostBillable": "$100.00",
"loggedHoursCostNonBillable": "",
"for": "Jane",
"tsNote": "10/17/22: Sample Timesheet Note",
"month": "10",
"week": "42",
"project": "Sample Project 1",
"folder": "Sample Project 1",
"assignmentDone": "No",
"4089": "Green"
}
]
}
Filter Options
Apply the filter string to the endpoint URL.
Filter attribute | Field type | Description | Filter string | Note |
---|---|---|---|---|
date | dateTime | Pull time entries in the specified date range. | ?date[between]=["2022-07-04","2022-07-06"] | Encode operator and value. If no value is provided, the date range defaults to last 30 days. Date value doesn’t need a timestamp. |
userId | number | Pull timesheet entries for specific users by their ID | ?userId[in]=["12","34"] |
Updated about 2 years ago