Returns a list of time entries.

GET /psa/time-entries

Group: PSA › Time Entries · Operation ID: timeEntries

Returns time entries for the projects where you are a team member.

The person and project identifiers on each entry (memberId, memberEmployeeId, projectPositionId and psaProjectId) are returned but cannot be filtered or sorted on. There is no endpoint that lists a specific employee's time entries.

Open in the interactive reference

Parameters

Name In Type Required Description
Api-Version header "v1" yes The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version v1.

Query surface

Response

200 Success

Under data, an array of timeEntriesRow:

Field Type Required Description
id string no The unique identifier for the time entry.
date string (date) or null no The date the time was logged for. Format YYYY-MM-DD.
hours string (decimal) or null no The total hours logged in this entry.
billableHours string (decimal) or null no The hours classified as billable to a customer, derived from projectActivityCategory.
nonBillableHours string (decimal) or null no The hours classified as non-billable to a customer, derived from projectActivityCategory.
internalValuableHours string (decimal) or null no The hours classified as internal valuable work, derived from projectActivityCategory.
internalNonValuableHours string (decimal) or null no The hours classified as internal non-valuable work, derived from projectActivityCategory.
invoicedHours string (decimal) or null no The hours that have been invoiced, a subset of billableHours.
revenue string (decimal) or null no The revenue from this time entry, in the currency given by currency.
cost string (decimal) or null no The cost of this time entry, in the currency given by currency.
currency string or null no The currency of revenue and cost. Format ISO 4217, for example 'USD'. It is the currency of the project position's bill rate.
notes string or null no Free-form notes on the time entry.
submissionStatus string or null no The submission and approval status of the entry. Possible values: 'draft', 'pending', 'approved', 'rejected', 'invoiced'.
submissionDate string (date) or null no The date the entry was submitted for approval. Format YYYY-MM-DD.
month string (date) or null no The first day of the month the entry is reported under. Format YYYY-MM-DD.
memberId number or null no The numeric key of the PSA member assignment the time was logged for. GET psa/team-members/:id takes the member's UUID, not this key, so it cannot fetch the member.
memberEmployeeId number or null no The numeric key of the employee who logged the time. There is no endpoint for it.
memberEmployeeName string or null no The name of the employee who logged the time.
projectActivityId number or null no The numeric key of the activity the time was logged against. GET psa/activities/:id takes the activity's UUID, not this key, so it cannot fetch the activity.
projectActivityName string or null no The name of the activity the time was logged against.
projectActivityCategory string or null no The billability category of the activity the time was logged against. The billable, non-billable and internal-hour fields are derived from it. See category on GET psa/activities/:id.
projectPositionId number or null no The numeric key of the position the time was logged against. GET psa/positions/:id takes the position's UUID, not this key, so it cannot fetch the position.
projectPositionName string or null no The name of the position the time was logged against.
psaProjectId number or null no The numeric key of the PSA project the entry belongs to. GET psa/projects/:id takes the project's UUID, not this key, so it cannot fetch the project.
projectName string or null no The name of the PSA project the entry belongs to.
psaProjectStatus string or null no The status of the PSA project this entry belongs to.
lastModifiedDate string (date-time) or null no The date and time the entry last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ.

Statuses