Project

A project [Project] is a unique sequence of tasks that must be completed to reach a certain outcome to be delivered typically to a customer.

Review the Usage Guidelines for the Project object.

XML

SOAP

REST

Database table

Object

Project

oaProject

Project

project

Supported Commands

Add, Read, Modify, Delete

add(), read(), modify(), upsert(), delete()

See Projects

The Project object has the following standard properties:

Note:

Project object properties may also include custom fields. The object type supports the custom equal to read method and the enable_custom read attribute.

XML / SOAP

REST

Database

Description

active

isActive

active

A 1/0 field indicating if the project is active. Defaults to 1 if not set when adding a project.

attachmentid

attachments

attachment_id

The attachments associated with this project. Array (REST)of internal IDs for attachment objects.

auto_bill

isAutoBill

auto_bill

A 1/0 field indicating if the project can be billed automatically. Available only if project billing rules are not used.

auto_bill_cap

isAutoBillCap

auto_bill_cap

A 1/0 field indicating if there is a cap on the amount that can be billed automatically for the project. Available only if project billing rules are not used.

auto_bill_cap_value

autoBillCapValue

auto_bill_cap_value

The autobilling cap amount, in the currency used for the project.

auto_bill_override

isAutoBillOverriden

auto_bill_override

A 1/0 field indicating if the project-specific autobilling settings should be used instead of account-wide autobilling settings. Project-specific autobilling settings are held in the auto_bill table. Available only if project billing rules are not used.

az_approvalprocess

expenseAuthorizationApprovalProcess

az_approvalprocess

The internal ID of the approval process [ApprovalProcess] for expense authorizations associated with the project. Mutually exclusive with az_approver (XML and SOAP API) or expenseAuthorizationApprover (REST API).

az_approver

expenseAuthorizationApprover

az_approver

The internal ID of the User who approves expense authorizations associated with the project, if a single approver process is used. Mutually exclusive with with az_approvalprocess (XML and SOAP API) or expenseAuthorizationApprovalProcess (REST API).

Other possible values:

  • -1 — the expense authorization owner’s manager.

  • -2 — the manager of the expense authorization owner’s manager.

  • -3 — the project owner.

  • -4 — self (expense authorization owner).

billing_code

billingCode

billing_code

The project billing code. Used in bulk invoicing.

billing_contactid

billingContactId

billing_contact_id

The internal ID of the billing contact, if different from the designated billing contact for the customer.

br_approvalprocess

bookingRequestApprovalProcess

br_approvalprocess

The internal ID of the approval process [ApprovalProcess] for booking requests for to the project. Mutually exclusive with br_approver (XML and SOAP API) or bookingRequestApprover (REST API).

br_approver

bookingRequestApprover

br_approver

The internal ID of the User who approves booking requests to the project, if a single approver process is used. Mutually exclusive with br_approvalprocess (XML and SOAP API) or bookingApprovalProcess (REST API).

The internal ID of the employee who approves booking requests for the project, if a single approver process is used. Mutually exclusive with bookingApprovalProcess.

Other possible values:

  • -1 — the requested resource or the requester's manager.

  • -2 — the manager of the booked resource or the requester's manager.

  • -3 — the project owner.

  • -4 — self (booked resource or the requester).

  • -9 — submitter (requester). This option may not be available depending on your OpenAir account configuration.

budget

budget

budget

The budgeted revenue for the project.

budgetApprovalProcess

bg_approvalprocess

The internal ID of approval process [ApprovalProcess] for budgets associated with the project. Mutually exclusive with budgetApprover.

budgetApprover

bg_approver

The internal ID of the User who approves for budgets associated with the project, if a single approver process is used. Mutually exclusive with budgetApprovalProcess.

Other possible values:

  • -1 — the budget owner’s manager.

  • -2 — the manager of the budget owner’s manager.

  • -3 — the project owner.

  • -4 — self (budget owner).

budgetCost

budget_cost

The budgeted cost for the project.

budget_time

budgetTime

budget_time

The budgeted amount of time for the project in hours.

category_filter

categoryFilter

category_filter

A comma-delimited list of internal IDs of categories (services) against which time can be booked for the project.

code

accountingCode

acct_code

Optional accounting code that can be used for integration with external accounting systems.

copy_approvers

copyApprovers

Duplicates project approvers. A 1/0 field, 1 if the project approvers should be copied.

copyBookings

A 1/0 field indicating whether to copy the bookings associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copyCpExcludeFilters

A 1/0 field indicating whether to copy the customers and projects to exclude from denominator when calculating user allocation % from the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_custom_fields

copyCustomFields

A 1/0 field indicating whether to copy the custom field values from the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_dashboard_settings

copyDashboardSettings

A 1/0 field indicating whether to copy the dashboard settings from the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copyExpensePolicy

A 1/0 field indicating whether to copy the expense policy associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_invoice_layout_settings

copyInvoiceLayoutSettings

A 1/0 field indicating whether to copy the invoice layout settings associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_issues

copyIssues

A 1/0 field indicating whether to copy the issues associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_loaded_cost

copyLoadedCost

A 1/0 field indicating whether to copy the loaded costs from the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_notification_settings

copyNotificationSettings

A 1/0 field indicating whether to copy the notification settings from the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copyProjectAssignmentProfiles

A 1/0 field indicating whether to copy the project assignment profiles associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_project_billing_auto_settings

copyProjectBillingAutoSetting

A 1/0 field indicating whether to copy the automated project autobilling settings from the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_project_billing_rules

copyProjectBillingRules

A 1/0 field indicating whether to copy the project billing rules associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copyProjectBudgetGroups

A 1/0 field indicating whether to copy the project budget groups associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_project_pricing

copyProjectPricing

A 1/0 field indicating whether to copy the project pricing associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_revenue_recognition_auto_settings

copyRevenueRecognitionAutoSettings

A 1/0 field indicating whether to copy the project revenue recognition autorun settings associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_revenue_recognition_rules

copyRevenueRecognitionRules

A 1/0 field indicating whether to copy the project revenue recognition rules associated with the project or project template specified in templateProjectId. Used only with POST/projects/from-template/.

copy_revenuerecognition_auto_settings

See copy_revenue_recognition_auto_settings.

cost_centerid

costCenterId

cost_center_id

The internal ID of the cost center associated with the project.

create_workspace

A 1/0 field indicating whether to create a workspace associated with the project automatically when creating a project. The project owner becomes the workspace owner.

created

created

created

[Read-only] The date the project was created.

See Date Fields

credit_invoice_layout_id

creditInvoiceLayoutId

credit_invoice_layout_id

The internal ID of the credit memo (negative invoice) layout associated with the project.

currency

currency

currency

The currency for monetary values in the project record. Three-letter currency code.

current_dr

[Read-only] Calculated deferred revenue total.

current_wip

[Read-only] Calculated work-in-progress revenue total.

customer_name

customer.name

The internal ID of the customer associated with the project .

customerid

customerId

customer_id

[Required] The internal ID of the customer associated with the project.

dashboardFrom

dashboard_from

The item that determines if the dashboard is enabled.

Possible values:

  • S — Project stage

  • P — Project

deleted

deleted

A 1/0 field indicating whether the record was deleted

exported_dr

[Read-only] Calculated deferred revenue total using exported transactions only.

Important:

Only available for a specific use case.

exported_wip

[Read-only] Calculated work-in-progress revenue total using exported transactions only.

Important:

Only available for a specific use case.

externalid

externalId

external_id

The unique external ID of the project, if the record was imported from an external system.

filtersetids

filterSets

filterset_ids

The filter sets associated with this project. Array of internal IDs for filter sets.

Users who have access to any of the filter sets associated with the project have access to the project. Required if the Require a filter set selection when adding or editing project box is checked on the filter set settings form in OpenAir (Administration > Global Settings > Account > Filter Set Settings).

finish_date

finishDate

finish_date

The finish date of the project. Defaults to the current date if not set when adding a project.

See Date Fields

hierarchy_node_ids

hierarchyNodes

The hierarchy nodes associated with this project. Array of internal IDs for hierarchy nodes.

Only hierarchy nodes associated with a hierarchy that is shown on the project property form (Show this hierarchy when editing projects box checked on the hierarchy entity form in OpenAir) are included.

id

id

id

[Read-only] The unique internal identifier of the project. Assigned by OpenAir.

invoice_layoutid

invoiceLayoutId

invoice_layout_id

The internal ID of the invoice layout associated with the project.

invoice_text

invoiceText

invoice_text

Text to display on every invoice.

isDashboardEnabled

enable_dashboard

A 1/0 field indicating if the project dashboard is enabled, when dashboardFrom is set to P.

is_portfolio_project

isPortfolioProject

is_portfolio_project

A 1/0 field indicating if the project is a portfolio project.

locationid

The internal ID for the location of this project (DEPRECATED).

main_contactid

contactId

The internal ID of the main contact associated with the project.

message

dashboardMessage

message

The dashboard message.

msp_link_type

mspLinkType

msp_link_type

The Microsoft Project import status.

Possible values:

  • Empty value — Not imported

  • I — Imported and locked for edit

  • U — Imported and open for edit

name

name

name

[Required] The name of the project task. Depending on your company's account configuration, each project for a specific customer must have a unique name.

newsfeedid

newsFeedId

newsfeed_id

The internal ID of the news feed associated with the project.

no_dirty

A 1/0 field indicating if the project should be marked dirty when the current recalculation finishes.

notes

notes

notes

Notes about the project.

notify_assignees

notifyAssignees

notify_assignees

A 1/0 field indicating whether to send notification email to assigned employees when a task associated with the project is added, modified, or deleted.

notifyAssignmentCc

assignment_cc

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.

notify_issue_assigned_to

notifyIssueAssignedTo

notify_issue_assigned_to

A 1/0 field indicating whether to send notification email to the assigned employee when an issue is assigned to an employee.

notify_issue_closed_assigned_to

notifyIssueClosedAssignedTo

notify_issue_closed_assigned_to

A 1/0 field indicating whether to send notification email to the assigned employee when an issue is progressed to a closed issue stage.

notify_issue_closed_customer_owner

notifyIssueClosedCustomerOwner

notify_issue_closed_customer_owner

A 1/0 field indicating whether to send notification email to the customer owner when an issue is progressed to a closed issue stage.

notify_issue_closed_project_owner

notifyIssueClosedProjectOwner

notify_issue_closed_project_owner

A 1/0 field indicating whether to send notification email to the project owner when an issue is progressed to a closed issue stage.

notify_issue_created_customer_owner

notifyIssueCreatedCustomerOwner

notify_issue_created_customer_owner

A 1/0 field indicating whether to send notification email to the customer owner when an issue is created.

notify_issue_created_project_owner

notifyIssueCreatedProjectOwner

notify_issue_created_project_owner

A 1/0 field indicating whether to send notification email to the project owner when an issue is created.

notify_owner

notifyOwner

notify_owner

A 1/0 field indicating whether to send notification email to the project owner when ownership is changed.

notify_sr_submitted_project_owner

notifySrSubmittedProjectOwner

notify_sr_submitted_project_owner

A 1/0 field indicating whether to send notification email to the project owner when a schedule request is submitted for a user booked or assigned to the project.

only_owner_can_edit

onlyOwnerCanEdit

only_owner_can_edit

A 1/0 field indicating whether only the project owner can edit this project.

payroll_type_filter

payrollTypeFilter

payroll_type_filter

A comma-delimited list of internal IDs of payroll types against which time can be booked for the project.

picklist_label

Label as shown on form picklist.

pm_approver_1

projectApprover1

pm_approver_1

The internal ID of the first project approver [User] that is substituted into the approval processes.

Other possible value:

  • -6 — the first additional project approver.

pm_approver_2

projectApprover2

pm_approver_2

The internal ID of the second project approver [User] that is substituted into the approval processes.

Other possible value:

  • -7 — the second additional project approver.

pm_approver_3

projectApprover3

pm_approver_3

The internal ID of the third project approver [User] that is substituted into the approval processes.

Other possible value:

  • -8 — the third additional project approver.

po_approvalprocess

purchaseOrderApprovalProcess

po_approvalprocess

The internal ID of the approval process [ApprovalProcess] for purchase orders associated with the project. Mutually exclusive with po_approver (XML and SOAP API) or purchaseOrderApprover (REST API).

po_approver

purchaseOrderApprover

po_approver

The internal ID of the User who approves purchase orders associated with the project, if a single approver process is used. Mutually exclusive with po_approvalprocess (XML and SOAP API) or purchaseOrderApprovalProcess (REST API).

Other possible values:

  • -1 — the purchase order owner’s manager.

  • -2 — the manager of the purchase order owner’s manager.

  • -3 — the project owner.

  • -4 — self (purchase order owner).

portfolio_projectid

portfolioProjectId

portfolio_project_id

The internal ID of the portfolio project associated with the project, if the project is a subordinate project. The project with internal ID portfolio_projectid must be designated as a portfolio project [is_portfolio_project].

pr_approvalprocess

purchaseRequestApprovalProcess

pr_approvalprocess

The internal ID of the approval process [ApprovalProcess] for purchase requests associated with the project. Mutually exclusive with pr_approver (XML and SOAP API) or purchaseRequestApprover (REST API).

The internal ID of the purchase request approval process for the project. Mutually exclusive with purchaseRequestApprover.

pr_approver

purchaseRequestApprover

pr_approver

The internal ID of the User who approves purchase requests associated with the project, if a single approver process is used. Mutually exclusive with pr_approvalprocess (XML and SOAP API) or purchaseRequestApprovalProcess (REST API).

Other possible values:

  • -1 — the purchase request owner’s manager.

  • -2 — the manager of the purchase request owner’s manager.

  • -3 — the project owner.

  • -4 — self (purchase request owner).

project_locationid

projectLocationId

project_location_id

The internal ID of the project location associated with the project.

project_stageid

projectStageId

project_stage_id

The internal ID of the project stage associated with the project. Defaults to 1 if not set when adding a project.

rate

rate

rate

The hourly billing rate for the project.

rate_cardid

rateCardId

rate_card_id

The rate card to be used for projected billing, if not zero.

rm_approvalprocess

bookingApprovalProcess

rm_approvalprocess

The internal ID of the approval process [ApprovalProcess] for bookings to the project. Mutually exclusive with rm_approver (XML and SOAP API) or bookingApprover (REST API).

rm_approver

bookingApprover

rm_approver

The internal ID of the User who approves bookings to the project, if a single approver process is used. Mutually exclusive with rm_approvalprocess (XML and SOAP API) or bookingApprovalProcess (REST API).

Other possible values:

  • -1 — the booked resource’s manager.

  • -2 — the manager of the booked resource's manager.

  • -3 — the project owner.

  • -4 — self (booked resource).

  • -9 — submitter. This option may not be available depending on your OpenAir account configuration.

rv_approvalprocess

revenueApprovalProcess

rv_approvalprocess

The internal ID of the approval process for revenue containers associated with the project. Mutually exclusive with rv_approver (XML and SOAP API) or revenueApprover (REST API).

rv_approver

revenueApprover

rv_approver

The internal ID of the User who approves revenue containers associated with the project, if a single approver process is used. Mutually exclusive with rm_approvalprocess (XML and SOAP API) or revenueApprovalProcess (REST API).

Other possible values:

  • -1 — the revenue container owner's manager.

  • -2 — the manager of the container owner's manager.

  • -3 — the project owner.

  • -4 — self (revenue container owner).

sga_labor

sgaLabor

sga_labor

The allocated cost (SG and A) overhead percentage applied to labor for profitability analysis.

shipping_contact_id

shippingContactId

shipping_contact_id

The internal ID of the shipping contact associated with the project, if different from the designated shipping contact for the customer.

sold_to_contact_id

soldToContactId

sold_to_contact_id

The internal ID of the sold to contact associated with the project, if different from the designated sold to contact for the customer.

start_date

startDate

start_date

The scheduled start date of the project. Defaults to the current date if not set when adding a project.

See Date Fields

sync_workspace

syncWorkspace

sync_workspace

A 1/0 field indicating whether to synchronize the project resources with membership of the workspace associated with the project.

ta_approvalprocess

timesheetApprovalProcess

ta_approvalprocess

The internal ID of the approval process [ApprovalProcess] for timesheets associated with the project. Mutually exclusive with ta_approver (XML and SOAP API) or timesheetApprover (REST API).

ta_approver

timesheetApprover

ta_approver

The internal ID of the User who approves timesheets associated with the project, if a single approver process is used. Mutually exclusive with ta_approvalprocess (XML and SOAP API) or timesheetApprovalProcess (REST API).

Other possible values:

  • -1 — the timesheet owner’s manager.

  • -2 — the manager of the timesheet owner’s manager.

  • -3 — the project owner.

  • -4 — self (timesheet owner).

ta_include

A 1/0 field indicating whether a Timesheet filterset is applied.

taskBudgetCost

task_budget_cost

[Read-only] The total projected cost across all tasks in the project, if task budgeting is enabled.

taskBudgetRevenue

task_budget_revenue

[Read-only] The total projected billing across all tasks in the project, if task budgeting is enabled.

tax_location_name

tax_location.name

The name of the of the tax location associated with the project.

tax_locationid

taxLocationId

tax_location_id

The internal ID of the of the tax location associated with the project.

taxRateFederal

tax_rate_federal

The federal tax rate for the project.

taxRateState

tax_rate_state

The state/HST tax rate for the project.

tb_approvalprocess

invoiceApprovalProcess

tb_approvalprocess

The internal ID of approval process [ApprovalProcess] for invoices associated with the project. Mutually exclusive with tb_approver (XML and SOAP API) or invoiceApproverbookingRequestApprover (REST API).

tb_approver

invoiceApprover

tb_approver

The internal ID of the User who approves invoices associated with the project, if a single approver process is used. Mutually exclusive with tb_approvalprocess (XML and SOAP API) or invoiceApprovalProcess (REST API).

Other possible values:

  • -1 — the invoice owner's manager.

  • -2 — the manager of the invoice owner's manager.

  • -3 — the project owner.

  • -4 — self (invoice owner).

  • -5 — the customer owner.

te_allowance_approvalprocess

expenseallowanceApprovalProcess

te_allowance_approvalprocess

The internal ID of the approval process [ApprovalProcess] for allowance reports associated with the project. Mutually exclusive with te_allowance_approver (XML and SOAP API) or expenseAllowanceApprover (REST API).

te_allowance_approver

expenseallowanceApprover

te_allowance_approver

The internal ID of the User who approves allowance reports associated with the project, if a single approver process is used. Mutually exclusive with te_allowance_approvalprocess (XML and SOAP API) or expenseAllowanceApprovalProcess (REST API).

Other possible values:

  • -1 — the allowance report owner’s manager.

  • -2 — the manager of the allowance report owner’s manager.

  • -3 — the project owner.

  • -4 — self (allowance report owner).

te_approvalprocess

expenseApprovalProcess

te_approvalprocess

The internal ID of the approval process [ApprovalProcess] for expense reports associated with the project. Mutually exclusive with te_approver (XML and SOAP API) or expenseApprover (REST API).

te_approver

expenseApprover

te_approver

The internal ID of the User who approves expense reports associated with the project, if a single approver process is used. Mutually exclusive with te_approvalprocess (XML and SOAP API) or expenseApprovalProcess (REST API).

Other possible values:

  • -1 — the expense report owner’s manager.

  • -2 — the manager of the expense report owner’s manager.

  • -3 — the project owner.

  • -4 — self (expense report owner).

te_include

A 1/0 field indicating whether an Expense Report filterset is applied.

template_project_id

templateProjectId

The internal ID of the project or project template to be copied. Used only with POST/projects/from-template/.

timetype_filter

timetypeFilter

timetype_filter

A comma-delimited list of internal IDs of time types against which time can be booked for the project.

updated

updated

updated

[Read-only] The date the project was last updated or modified.

See Date Fields

user_filter

userFilter

user_filter

A comma-delimited list of internal IDs of employees who can edit the project if only the project owner can edit the project (only_owner_can_edit or onlyOwnerCanEdit is not 0).

userid

userId

user_id

The internal ID of the employee associated with the project — the project owner.

Usage Guidelines

Review the following guidelines:

  • To create one project from another project , use the add method. Use the template_project _id field to designate the ID of the project from which project data will be copied. Indicate the settings and dependent objects you want copied by setting the property copy_<setting> to 1, where <setting> is the programmatic name for the setting or the dependent object type to be copied.

  • Adding or modifying a project triggers the project recalculation process in OpenAir unless you use the no_recalc attribute (see Add, Update and Upsert Attributes), or unless your company's account is configured never to trigger the project recalculation process in OpenAir when a change is made using the API.

  • You cannot delete a Project object if this object is referenced by an object of any of the following type. Delete any dependent objects first before you delete a Project object.