Returns the activity with the given identifier.

GET /psa/activities/{id}

Group: PSA › Activities · Operation ID: getActivity

An activity is a project task. This route returns the activity itself, not who is assigned to it: assignment is a separate concern with its own cardinality, and no assignment fields are published here.

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.
id path string yes The unique identifier for the activity to return.

Response

200 Success

Under data (getActivityOutput):

Field Type Required Description
id string yes The unique identifier for the activity.
name string yes The display name of the activity.
description string no A free-form description of the activity. Absent when none was set.
hoursBudget string (decimal) no The budgeted hours for this activity, as a count of hours. It is not a monetary amount.
billable boolean no Whether the activity is billable to a customer. Derived from category being 'ClientBillable'.
invoiced boolean no Whether the activity has been invoiced.
startDate string (date) no The activity's start date. Format YYYY-MM-DD. It is within the owning project's date range when the project's enforceActivityDateRange setting is on.
endDate string (date) no The activity's end date. Format YYYY-MM-DD.
billingType string yes The activity's billing type. Possible values: 'Hours', 'Milestone', 'FixedFee'.
category string no The activity's category. Possible values: 'ClientBillable', 'NonBillable', 'NonValuable', 'Valuable'.
milestoneId number no The id of the milestone this activity is billed against. Absent unless billingType is 'Milestone'. It is a numeric package-layer key, not the UUID that GET psa/milestones/:id takes.
fixedFeeId number no The id of the fixed fee this activity is billed against. Absent unless billingType is 'FixedFee'. It is a numeric package-layer key, not the UUID that GET psa/fixed-fees/:id takes.
activityStatusId number no The id of the activity's progress status. Absent when no status is set. Status values are tenant-configured, and there is no endpoint that lists them. Use statusName for the label.
statusName string no The name of the activity's progress status, for example 'In progress'. Absent when no status is set.
parentActivityId number no The id of the parent activity when this is a sub-task. Absent when the activity is top-level. It is a numeric package-layer key, not the UUID that GET psa/activities/:id takes.
psaProjectId number no The id of the PSA project that owns this activity. Absent for a timetracking project with no PSA layer. It is a numeric key you can filter on here, but not the UUID that GET psa/projects/:id takes.
lastModifiedDate string (date-time) yes The date and time this activity last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ.

Errors

Code Status
NOT_FOUND 400

Statuses