Detailed report
Runs Clockify's detailed report and returns its rows or a file.
Settings
| Setting | What it is |
|---|---|
| ConnectionRequired | The Clockify connection the step signs in with. |
| Workspace id override | Leave empty to use the workspace on the connection. Pick another workspace the same key can reach, or type its id — the List workspaces node gives you the ids. The id pickers on this node list from it. |
| Period | "ABSOLUTE" or "TODAY" or "YESTERDAY" or "THIS_WEEK" or "LAST_WEEK" or "PAST_TWO_WEEKS" or "THIS_MONTH" or "LAST_MONTH" or "THIS_YEAR" or "LAST_YEAR" |
| From | text |
| To | text |
| Answer as | Rows come back as data you can loop over. Every other choice comes back as a file — which shape Clockify sends that file in is owed one run against a real workspace. |
| People | Pick from this node's workspace, or type Clockify user ids. |
| Projects | Pick from this node's workspace, or type Clockify project ids. |
| Clients | Pick from this node's workspace, or type Clockify client ids. |
| Tasks | Picked from the list Clockify offers. |
| Tags | Picked from the list Clockify offers. |
| Billable | "" or "true" or "false" |
| Approval | "ALL" or "APPROVED" or "UNAPPROVED" |
| Invoicing | "ALL" or "INVOICED" or "UNINVOICED" |
| Description contains | text |
| Only entries with no description | true/false |
| Round the way the workspace does | true/false |
| Amounts | "HIDE_AMOUNT" or "EARNED" or "COST" or "PROFIT" or "EXPORT" |
| Sort by | "DATE" or "ID" or "DESCRIPTION" or "USER" or "DURATION" or "ZONED_DATE" or "NATURAL" or "USER_DATE" |
| Direction | "ASCENDING" or "DESCENDING" |
| Time zone | Leave empty to use the key's own Clockify time zone. |
| Week starts on | "MONDAY" or "TUESDAY" or "WEDNESDAY" or "THURSDAY" or "FRIDAY" or "SATURDAY" or "SUNDAY" |
| Rows per call | 1 to 1,000. Clockify publishes no maximum here, so this is Flowmage's cap. |
| Fetch every page | Walks Clockify's report pages, and refuses past 5,000 rows rather than answering a short list. A file export is one call by definition. |
| Anything else | Anything else from Clockify's report filter, merged over the fields above — for example {"customFields":[{"id":"…","value":"…"}]}. The fields above win only where this leaves a key out. |
| Cursor | Paste a previous run's Next cursor to read the page after it. |
Technical details
| Key | Value |
|---|---|
connection | texta connection id from `requires.connections` (provider `clockify`) |
workspaceId | texta value from the vendor's own list |
dateRangeType | "ABSOLUTE" or "TODAY" or "YESTERDAY" or "THIS_WEEK" or "LAST_WEEK" or "PAST_TWO_WEEKS" or "THIS_MONTH" or "LAST_MONTH" or "THIS_YEAR" or "LAST_YEAR", by default "LAST_MONTH" |
dateRangeStart | textused when `dateRangeType` is "ABSOLUTE" |
dateRangeEnd | textused when `dateRangeType` is "ABSOLUTE" |
exportType | "JSON" or "CSV" or "XLSX" or "PDF" or "ZIP", by default "JSON" |
userIds | texta value from the vendor's own list |
projectIds | texta value from the vendor's own list |
clientIds | texta value from the vendor's own list |
taskIds | texta value from the vendor's own list |
tagIds | texta value from the vendor's own list |
billable | "" or "true" or "false" |
approvalState | "ALL" or "APPROVED" or "UNAPPROVED", by default "ALL" |
invoicingState | "ALL" or "INVOICED" or "UNINVOICED", by default "ALL" |
description | text |
withoutDescription | true/false, by default false |
rounding | true/false, by default false |
amountShown | "HIDE_AMOUNT" or "EARNED" or "COST" or "PROFIT" or "EXPORT", by default "HIDE_AMOUNT" |
sortColumn | "DATE" or "ID" or "DESCRIPTION" or "USER" or "DURATION" or "ZONED_DATE" or "NATURAL" or "USER_DATE", by default "DATE" |
sortOrder | "ASCENDING" or "DESCENDING", by default "ASCENDING" |
timeZone | text |
weekStart | "MONDAY" or "TUESDAY" or "WEDNESDAY" or "THURSDAY" or "FRIDAY" or "SATURDAY" or "SUNDAY", by default "MONDAY" |
pageSize | number, by default 200 |
returnAll | true/false, by default falseused when `exportType` is "JSON" |
filter | object (any keys), by default {} |
cursor | text |
Output
| Field | Type |
|---|---|
timeEntriesReport rows | array |
totals | array |
timeEntryCountRows in this answer | number |
hasMoreMore rows are waiting behind this page | boolean |
fileReport file, or nothing when the answer is rows | any |
file.base64Report file (base64) | string |
file.name | string |
file.contentType | string |
file.sizeSize in bytes | number |
nextCursorCursor for the next page | string |
Sample output, and the expression for each field
- filenull
- hasMorefalse
- timeEntries[]
- timeEntryCount0
- totals[]
Errors
When a step of this node stops a run, the run page shows a code. Look it up:
Example step
The step as a flow file holds it. Replace each value in <…>.
{
"config": {
"amountShown": "HIDE_AMOUNT",
"approvalState": "ALL",
"billable": "",
"clientIds": "",
"connection": "<connection id>",
"cursor": "",
"dateRangeEnd": "",
"dateRangeStart": "",
"dateRangeType": "LAST_MONTH",
"description": "",
"exportType": "JSON",
"filter": {},
"invoicingState": "ALL",
"pageSize": 200,
"projectIds": "",
"returnAll": false,
"rounding": false,
"sortColumn": "DATE",
"sortOrder": "ASCENDING",
"tagIds": "",
"taskIds": "",
"timeZone": "",
"userIds": "",
"weekStart": "MONDAY",
"withoutDescription": false,
"workspaceId": ""
},
"label": "Detailed report",
"type": "clockify.detailedReport",
"version": 2
}Older versions
A flow that already has this version keeps running it. A new step always gets the newest.
Version 1
| Setting | What it is |
|---|---|
| ConnectionRequired | The Clockify connection the step signs in with. |
| Workspace id override | Leave empty to use the workspace on the connection. Pick another workspace the same key can reach, or type its id — the List workspaces node gives you the ids. The id pickers on this node list from it. |
| Period | "ABSOLUTE" or "TODAY" or "YESTERDAY" or "THIS_WEEK" or "LAST_WEEK" or "PAST_TWO_WEEKS" or "THIS_MONTH" or "LAST_MONTH" or "THIS_YEAR" or "LAST_YEAR" |
| From | text |
| To | text |
| Answer as | Rows come back as data you can loop over. Every other choice comes back as a file — which shape Clockify sends that file in is owed one run against a real workspace. |
| People | Pick from this node's workspace, or type Clockify user ids. |
| Projects | Pick from this node's workspace, or type Clockify project ids. |
| Clients | Pick from this node's workspace, or type Clockify client ids. |
| Tasks | Picked from the list Clockify offers. |
| Tags | Picked from the list Clockify offers. |
| Billable | "" or "true" or "false" |
| Approval | "ALL" or "APPROVED" or "UNAPPROVED" |
| Invoicing | "ALL" or "INVOICED" or "UNINVOICED" |
| Description contains | text |
| Only entries with no description | true/false |
| Round the way the workspace does | true/false |
| Amounts | "HIDE_AMOUNT" or "EARNED" or "COST" or "PROFIT" or "EXPORT" |
| Sort by | "DATE" or "ID" or "DESCRIPTION" or "USER" or "DURATION" or "ZONED_DATE" or "NATURAL" or "USER_DATE" |
| Direction | "ASCENDING" or "DESCENDING" |
| Time zone | Leave empty to use the key's own Clockify time zone. |
| Week starts on | "MONDAY" or "TUESDAY" or "WEDNESDAY" or "THURSDAY" or "FRIDAY" or "SATURDAY" or "SUNDAY" |
| Rows per call | 1 to 1,000. Clockify publishes no maximum here, so this is Flowmage's cap. |
| Fetch every page | Walks Clockify's report pages, and refuses past 5,000 rows rather than answering a short list. A file export is one call by definition. |
| Anything else | Anything else from Clockify's report filter, merged over the fields above — for example {"customFields":[{"id":"…","value":"…"}]}. The fields above win only where this leaves a key out. |
Technical details
| Key | Value |
|---|---|
connection | texta connection id from `requires.connections` (provider `clockify`) |
workspaceId | texta value from the vendor's own list |
dateRangeType | "ABSOLUTE" or "TODAY" or "YESTERDAY" or "THIS_WEEK" or "LAST_WEEK" or "PAST_TWO_WEEKS" or "THIS_MONTH" or "LAST_MONTH" or "THIS_YEAR" or "LAST_YEAR", by default "LAST_MONTH" |
dateRangeStart | textused when `dateRangeType` is "ABSOLUTE" |
dateRangeEnd | textused when `dateRangeType` is "ABSOLUTE" |
exportType | "JSON" or "CSV" or "XLSX" or "PDF" or "ZIP", by default "JSON" |
userIds | texta value from the vendor's own list |
projectIds | texta value from the vendor's own list |
clientIds | texta value from the vendor's own list |
taskIds | texta value from the vendor's own list |
tagIds | texta value from the vendor's own list |
billable | "" or "true" or "false" |
approvalState | "ALL" or "APPROVED" or "UNAPPROVED", by default "ALL" |
invoicingState | "ALL" or "INVOICED" or "UNINVOICED", by default "ALL" |
description | text |
withoutDescription | true/false, by default false |
rounding | true/false, by default false |
amountShown | "HIDE_AMOUNT" or "EARNED" or "COST" or "PROFIT" or "EXPORT", by default "HIDE_AMOUNT" |
sortColumn | "DATE" or "ID" or "DESCRIPTION" or "USER" or "DURATION" or "ZONED_DATE" or "NATURAL" or "USER_DATE", by default "DATE" |
sortOrder | "ASCENDING" or "DESCENDING", by default "ASCENDING" |
timeZone | text |
weekStart | "MONDAY" or "TUESDAY" or "WEDNESDAY" or "THURSDAY" or "FRIDAY" or "SATURDAY" or "SUNDAY", by default "MONDAY" |
pageSize | number, by default 200 |
returnAll | true/false, by default falseused when `exportType` is "JSON" |
filter | object (any keys), by default {} |