Project Tasks

Project tasks are work packages to be completed as part of a project. It includes information about the work to be done, when, by whom, and at what cost.

Note:

The /project-tasks/ endpoint can only be used for project task records with the task classification field set to Task in OpenAir. This is equivalent to records with the classification property set to T in the project_task table, or in the XML API Projecttask or SOAP API oaProjecttask datatypes.

For Milestones — project task records with zero duration and the task classification field set to Milestone in OpenAir, or the classification property set to M in the project_task table, or in the XML API Projecttask or SOAP API oaProjecttask datatypes — see Project Milestones.

For Phases — project task records that have other project tasks nested under and the task classification field set to Phase in OpenAir, or the classification property set to P in the project_task table, or in the XML API Projecttask or SOAP API oaProjecttask datatypes — see Project Phases.

Available methods

ProjectTask Object Properties

A project task is a work package to be completed as part of a project. It includes information about the work to be done, when, by whom, and at what cost.

The ProjectTask object has the following properties:

Name

Description

Type

Read-Only

Query Allowed

Sorting allowed

assignmentCc

A comma-delimited list of internal IDs of employees to be copied (Cc) into assignment notification email.

Other possible listed values:

  • -1 — the assignee’s manager.

  • -2 — the manager of the assignee’s manager.

  • -3 — the project owner.

  • -5 — the customer owner.

string

Yes

Yes

assignmentCcEmails

A comma-delimited lists of additional recipient email addresses to be copied (Cc) into assignment notification email. Used for recipients who are not OpenAir users.

string

Yes

Yes

attachments

The attachments associated with this task. Array of internal IDs for attachment objects.

Array of {”id”: <integerValue>} objects.

Yes

calculatedFinishes

Calculated finish date.

string($date)

Yes

Yes

calculatedStarts

Calculated start date of the project task. If the use task estimating feature is turned on, this field will have the estimated total time the task will take to complete. If zero, no estimating has occurred so the estimate is the same as the plan.

string($date)

Yes

Yes

costCenterId

The internal ID of the associated cost center.

integer($int64)

Yes

Yes

created

Time the record was created.

string($date-time)

Yes

Yes

Yes

currency

Currency for the money fields in the record. This should be the same as the project currency.

string

Yes

Yes

customerId

The internal ID of the associated customer.

integer($int64)

Yes

Yes

defaultCategory

The category to assign to a timesheet entry assigned to this task. The feature has to be enabled for this assignment to work.

integer($int64)

Yes

Yes

defaultCategory1

A feature, if enabled, would assign this default_category_1 to the category_1 for many transactions that have a category_1_id and project_task_id by searching the project_task and phase work breakdown structure for the first default_category_1 defined.

integer($int64)

Yes

Yes

defaultCategory2

A feature, if enabled, would assign this default_category_1 to the category_1 for many transactions that have a category_1_id and project_task_id by searching the project_task and phase work breakdown structure for the first default_category_1 defined.

integer($int64)

Yes

Yes

defaultCategory3

A feature, if enabled, would assign this default_category_1 to the category_1 for many transactions that have a category_1_id and project_task_id by searching the project_task and phase work breakdown structure for the first default_category_1 defined.

integer($int64)

Yes

Yes

defaultCategory4

A feature, if enabled, would assign this default_category_1 to the category_1 for many transactions that have a category_1_id and project_task_id by searching the project_task and phase work breakdown structure for the first default_category_1 defined.

integer($int64)

Yes

Yes

defaultCategory5

A feature, if enabled, would assign this default_category_1 to the category_1 for many transactions that have a category_1_id and project_task_id by searching the project_task and phase work breakdown structure for the first default_category_1 defined.

integer($int64)

Yes

Yes

externalId

If the record was imported from an external system you store the unique external record ID here.

integer($int64)

Yes

Yes

fnltDate

The finish no later than date of the task. The task must be finished by this date.

string($date)

Yes

Yes

hoursRemainingEstimates

 

Array of {”id”: <integerValue>} objects.

Yes

id

Unique ID. Automatically assigned by OpenAir

Array of {”id”: <integerValue>} objects.

Yes

Yes

Yes

idNumber

User-defined phase ID.

Array of {”id”: <integerValue>} objects.

Yes

isClosed

A 1/0 field indicating if this is closed phase.

boolean

Yes

Yes

isNonBillable

If set to 1, this is not billable. This is only applicable for project billing rules.

boolean

Yes

Yes

isReadyForRecognition

Flag 1/0 indicating if phase is ready for recognition

boolean

Yes

Yes

isSignOffRequired

 

boolean

Yes

Yes

isUsingProjectAssignment

Flag set to 1 if they are using the project level user assignment.

boolean

Yes

Yes

name

Short description of this task.

string

Yes

Yes

notes

Notes associated with the project task.

string

Yes

Yes

parentId

The internal ID of the immediate ancestor. If zero or null, this is a project-level (top-level) task or phase.

integer($int64)

Yes

Yes

percentComplete

This field is an estimate of the percentage of planned time which has been completed. It has no relation to the real time spent on a phase. (A 5-hour phase could consume 50 hours of work but still be only 25% complete.)

integer($int64)

Yes

Yes

plannedHours

Total number of hours the phase is estimated to require. This is the total amount of time the phase should take if worked on continuously by one person with no interruptions. A phase with zero planned hours is also known as a milestone.

number($float)

Yes

Yes

predecessors

Comma delimited list of task IDs which must complete before this phase can start.

string

Yes

predecessorsLag

Comma delimited list for task ID:days of lag time for predecessors. Only populated if there is a lag time.

string

Yes

predecessorsType

Comma delimited list of task ID:relationship type for predecessors. Only populated if the relationship type is not finish-to-start.

string

Yes

priority

The priority of the phase (1 - 9).

integer($int64)

Yes

Yes

projectId

The internal ID of the associated project.

integer($int64)

Yes

Yes

projectTaskTypeId

The internal ID of the associated project task type. Not for phases.

integer($int64)

Yes

Yes

seq

The sequence number of this task.

integer($int64)

Yes

Yes

startDate

Optional scheduled starting date of this task. Overrides computed start date.

string($date)

Yes

Yes

taskBudgetCost

If task budgeting is enabled this is the total cost of the task.

number($float)

Yes

Yes

taskBudgetRevenue

If task budgeting is enabled this is the total projected billing for the task.

number($float)

Yes

Yes

taskSplits

 

Array of {”id”: <integerValue>} objects.

timetypeFilter

A timetype filter. This will hold a list of the timetypes that are allowed to book time to this task.

Array of {”id”: <integerValue>} objects.

updated

Time the record was last updated or modified

string($date)

Yes

Yes

Yes

useAllCanAssign

Is everyone able to assign time/expenses to this task.

boolean

Yes

Yes

useManualTaskBudget

If set to 1 then the task budget is manually entered rather than calculated by OpenAir

boolean

Yes

Yes

userAssignments

A comma separated list of user nicknames to assign this task to. (project_task_assign can also be used.)

Array of {”id”: <integerValue>} objects.