Aggregate time-entry metrics
GET
/time-entries/summary
const url = 'https://app.buildworkpro.com/api/v1/time-entries/summary';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://app.buildworkpro.com/api/v1/time-entries/summary \ --header 'Authorization: Bearer <token>'Returns entry_count, hours_total, cost_total, plus breakdowns by user and by project. Date filters apply to the work date (time_entries.date), NOT createdAt.
Authorizations
Section titled “ Authorizations ”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “ Query Parameters ”
dateFrom
string
dateTo
string
userId
integer | null
projectId
integer | null
Responses
Section titled “ Responses ”Summary
Media type
application/json
object
data
required
object
totals
required
object
entry_count
required
integer
hours_total
required
string
cost_total
required
string
by_user
required
Array<object>
object
userId
required
integer
firstName
required
string | null
lastName
required
string | null
hours_total
required
string
cost_total
required
string
by_project
required
Array<object>
object
projectId
required
integer
projectName
required
string | null
hours_total
required
string
cost_total
required
string
meta
required
object
request_id
Server-generated request identifier
string
pagination
object
cursor
required
Opaque cursor for the next page; null when no more results
string | null
has_more
required
Whether more pages are available after this one
boolean
count
required
Items in this page
integer
Example generated
{ "data": { "totals": { "entry_count": 1, "hours_total": "example", "cost_total": "example" }, "by_user": [ { "userId": 1, "firstName": "example", "lastName": "example", "hours_total": "example", "cost_total": "example" } ], "by_project": [ { "projectId": 1, "projectName": "example", "hours_total": "example", "cost_total": "example" } ] }, "meta": { "request_id": "example", "pagination": { "cursor": "example", "has_more": true, "count": 1 } }}Error
Media type
application/problem+json
object
type
required
URL identifying the problem type
string
format: uri
title
required
Short human-readable summary
string
status
required
HTTP status code
integer
detail
Human-readable explanation
string
request_id
Server-generated request identifier
string
errors
Validation error array (422 only)
Array<object>
object
field
required
Field path that failed validation
string
code
required
Validation error code
string
message
required
Human-readable validation message
string
Example generated
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}