Projects

This entity describes an Autotask Project. A project defines and organizes a group of related tasks, events, and documents. Each Project is specific to one Company and can include phases. Autotask users manage Projects through the Projects module.

NOTE  You can refer to the Online Help to find root and child access URLs of the entity you wish to query. Refer to Finding resource and child access URLs of REST API entities for more information.

Entity details

Entity Name: Projects

Entity Path:

/atservicesrest/v1.0/Projects

Can Create:
Can Update:
Can Query:
Can Delete:  
Can Have UDFs:

IMPORTANT  Requests to this entity require special handling. Refer to the Entity URLs and relationships section of this article for details.

Fields that cannot be queried

The following fields from this entity will return an error when queried.

  • changeOrdersBudget
  • extProjectType

Conditions and requirements

General

  • If Autotask receives a create, update, or delete request for this entity and its corresponding module is unavailable, the API will return the error message, "The logged in Resource does not have the adequate permissions to update this entity type." For more information about installed modules, refer to our Modules article.
  • The Project entity can have no more than 200 UDFs. Refer to UserDefinedFieldDefinitions.
  • When a project is completed via the API, the API will complete all tasks associated with the project and update the "Remaining Hours" and "Projected Variance from Remaining Hours" totals at both the Task TimeEntry and Project level.

Special field attributes

Field Conditions and Requirements
companyID Project.companyID cannot be updated.
companyOwnerResourceID companyOwnerResourceID is Read-Only.
endDateTime endDateTime must be greater than or equal to the end date of the latest phase, task, or issue.
LeadResourceID Project.LeadResourceID is no longer required via the API.
startDateTime If no phases, tasks, or issues are associated with the project, the start date can be updated, but startDateTime cannot be greater than or equal to endDateTime.
Project.startDate cannot be updated if any phases, tasks, or issues are associated with the Project.
startDateTime, endDateTime To maintain consistency with the Autotask UI, Project.startDateTime and Project.endDateTime do not have a time component and ignore any time component passed in.
status

Projects are inactivated by assigning the Inactive status; that is, Project.status = Inactive.

  • When a project is completed via the API, the API will complete all Tasks associated with the project and update the "Remaining Hours" and "Projected Variance from Remaining Hours" totals at both the task TimeEntry and Project levels.
  • type

    Projects of Type = Baseline are read-only and cannot be created, updated or deleted via the API.

    Autotask no longer supports projects of Type = Business Objective, Archived, or Inactive. Existing Projects of these types have been reassigned as follows:

    • Business Objective type have been reassigned to Internal.
    • Archived type have been reassigned to their original type (Client, Internal, Proposal, or Template) with Project.status = isComplete.
    • Inactive type have been reassigned to their original type with Project.status = Inactive. To reactivate an inactive project, the Project.status must be assigned a status other than Inactive.

    Field definitions

    Field Name Datatype Read-Only Is Required Reference Name Picklist
    actualBilledHours decimal      
    actualHours decimal      
    changeOrdersBudget decimal      
    changeOrdersRevenue decimal      
    companyID integer Companies  
    companyOwnerResourceID integer   Resources  
    completedDateTime datetime        
    completedPercentage integer      
    contractID integer     Contracts  
    createDateTime datetime      
    creatorResourceID integer   Resources  
    department integer      
    description string (2000)        
    duration integer      
    endDateTime datetime      
    estimatedSalesCost decimal        
    estimatedTime decimal      
    extProjectNumber string (50)        
    extProjectType integer      
    id long    
    impersonatorCreatorResourceID integer   Resources

     

    laborEstimatedCosts decimal        
    laborEstimatedMarginPercentage decimal      
    laborEstimatedRevenue decimal        
    lastActivityDateTime datetime      
    lastActivityPersonType integer      
    lastActivityResourceID integer   Resources  

    opportunityID

    integer

     

     

    Opportunities

     

    organizationalLevelAssociationID integer     Projects  
    originalEstimatedRevenue decimal        
    projectCostEstimatedMarginPercentage decimal      
    projectCostsBudget decimal        
    projectCostsRevenue decimal        
    projectLeadResourceID integer     Resources  
    projectName string (100)      
    projectNumber string (50)      

    projectType

    integer

     

     

    purchaseOrderNumber string (50)        
    sGDA decimal        
    startDateTime datetime      
    status integer      
    statusDateTime datetime        
    statusDetail string (2000)        

    Additional resources