Working with Project Stages
Each Procore company account includes an initial default set of project stages from which additional custom project stages can be created. Procore project stages (both default and custom) are assigned to a Procore project to define its current phase/stage of construction.
Procore's default project stages include the following:
- Pre-Construction: The contract has not been awarded yet.
- Course of Construction: The contract has been awarded and work has commenced on the project.
- Post-Construction: Work on the job site has been completed, but the project is still in close-out, warranty, or being finalized.
- Completed: The project is successfully finished.
- Not Awarded: No contract was awarded with respect to the project.
- Canceled: The project was canceled, either during pre-construction or the course of construction.
If a company uses a unique set of construction phases, custom project stages can be created using the Procore API. Custom project stages can be used by all projects in a given company account.
Project Stage API Endpoints
The Procore API provides the following endpoints for working with project stages.
|List Project Stages||Return a list of all project stages available in a company account.|
|Create Project Stage||Create a new project stage for use by all projects in a company account.|
|Show Project Stage||Show details on a specified project stage.|
|Update Project Stage||Update a specified project stage.|
|Delete Project Stage||Delete a specified project stage.|
Creating Custom Project Stages
You can use the Create Project Stage endpoint to create a new custom project stage. Each custom
project stage you create is associated with one of the default project stages in your company account. The
enumerated value you assign to the
category_type attribute determines which default
project stage the new custom project stage is mapped to.
category_type must be set to one of the following values.
The Create Project Stage endpoint requires a JSON request body as illustrated by this example.
"name": "Grading and Paving",
name field to specify the name for the new custom
project stage. Map the new custom project stage to a default project stage by setting the
category field to one of the
category_type values listed above. For this example, we create
a new custom project stage called "Grading and Paving" and assign it to the "Course of Construction"
default project stage.
Upcoming API Changes Impacting Project Stages
Please be aware of some upcoming API changes that may affect how you work with projects and project stages.
is_bidding_stagefield is planned for deprecation and will stop being supported by Procore six months after the deprecation is announced.
project_stage_idwill be a required field on JSON request payloads for the Create Project, Update Project, and Sync Projects endpoints when the target project does not aleady have a value set for
completion_datefields will be required on projects that have a project stage category type mapped to “Course of Construction”, “Post-Construction”, or “Completed”.
A deprecation announcement is being prepared that will provide specifics regarding the timing of these changes.