See the Channel Catalog to see which Plans have access to this channel.
Procore is a software platform in the construction industry that creates a central collaboration hub for owners, general contractors, specialty contractors, and other project collaborators across the entire project lifecycle - from pre-development and bidding to project completion.
Note: This channel is only available through the Built Environment Package or as an addon and is not included in every package.
How to Connect
- On the My pipelines page, click Create Pipelines.
- Search for the first step for your new pipeline. You can always add more steps later.
- To use the legacy builder, click the Pipeline Designer toggle to use the legacy version of the pipeline builder.
For more information about connections, see How to connect to a channel.
Connect to Procore
- On the right side of the page, choose All to list all channels enabled for your realm. Make sure Procore is enabled.
- Expand Procore and click Connect to Procore.
You will see the window below where you should enter your Procore Company ID - The Company ID displays in the URL as a path parameter as shown in the following example:
https://app.procore.com/112233445566/company/home/list
After that you will be redirected to Procore and should grant permission to Pipelines.
You will now be able to see all of the Procore resources.
How to reconnect
You may need to reconnect your account to a channel. Reasons may be (but not limited to):
- If you need to connect a different account.
- Authorization updates, such as a changed password.
- Editing the access rights that Pipelines has to the channel.
To reconnect:
- Select a pipeline that already has this channel in it.
- Open a step that contains this channel.
- Under account, select Connect (or reconnect) and follow the process above, How to connect.
Steps
The steps you can use with Procore fall under these categories: Companies, Projects, Companies (Vendors), Users, Change Events, Roles, RFIs, Budget, and Company Offices.
Note: You cannot use jinja expressions in trigger conditions unless explicitly specified as possible.
Type | Name | Description |
---|---|---|
Companies | ||
Query | Search Companies | Searches all Companies based on search criteria. |
Projects | ||
Trigger | Project Created | Triggers when a new Project is created. |
Trigger | Project Updated | Triggers when a new Project is updated. |
Query | Search Projects | Updates a board. |
Action | Create Project | Creates a new Project. |
Action | Update Project | Updates a Project. |
Action | Look Up a Project | Look up a Project by Project ID. |
Action | Fetch a Linked Project | Fetches a linked Project. |
Directory (Vendors) | ||
Trigger | Company (Vendor) Created | Triggers when a new Company (Vendor) is created |
Trigger | Company (Vendor) Updated | Triggers when a Company (Vendor) is updated |
Trigger | Company (Vendor) Removed From Project | Triggers when a Company (Vendor) is removed from project |
Action | Create Company (Vendor) | Creates a Company (Vendor). |
Action | Update Company (Vendor) | Updates a Company (Vendor). |
Action | Add Company (Vendor) To Project | Adds a Company (Vendor) to Project. |
Action | Remove Company (Vendor) From Project | Removes a Company (Vendor) from Project. |
Action | Fetch a Linked Directory -Vendors | Fetches a linked Directory - Vendor. |
Action | Look Up a Company (Vendor) | Looks up a Company (Vendor). |
Query | Search Companies (Vendors) | Searches Companies (Vendors) |
Change events | ||
Query | Search Change Events | Searches all Change Events based on search criteria |
Action | Look Up Change Event | Looks up a Change Event |
Trigger | Change Event Created | Triggers when a Change Event is created |
Trigger | Change Event Updated | Triggers when a Change Event is updated |
Users | ||
Trigger | User Created | Triggers when a new User is created |
Trigger | User Updated | Triggers when a User is updated |
Trigger | User Removed From Project | Triggers when a User is removed from project |
Action | Create User | Creates a User. |
Action | Update User | Updates a User. |
Action | Add User To Project | Adds a User to a Project. |
Action | Invite User | Sends an invite email to User |
Action | Remove User From Project | Removes a User from a Project. |
Action | Set User Project Permission Template | Sets User’s Project Permission Template. |
Action | Fetch Linked User | Fetches a linked User. |
Action | Look Up a User | Looks up a User. |
Query | Search Users | Searches Users based on search criteria. |
Company and Project Roles | ||
Query | Search Company Roles | Searches all Company Roles. |
Query | Search Project Roles | Searches all Project Roles |
RFIs | ||
Trigger | RFI Created | Triggers when a new RFI is created |
Trigger | RFI Updated | Triggers when an RFI is updated |
Trigger | RFI Reply Updated | Triggers when an RFI Reply is updated |
Trigger | RFI Replied | Triggers when an RFI gets replied |
Query | Search RFIs | Searches all RFIs based on search criteria. |
Action | Create RFI | Creates an RFI. |
Action | Look Up an RFI | Looks up an RFI. |
Action | Update RFI | Updates an RFI. |
Action | Fetch a Linked RFI | Fetched a linked RFI. |
Financials - Budget | ||
Query | Search Budget Line Items | Searches all Budget Line Items based on search criteria. |
Action | Add a Budget Line Item | Adds a Budget Line Item. |
Action | Look Up a Budget Line Item | Looks Up a Budget Line Item. |
Action | Update a Budget Line Item | Updates a Budget Line Item. |
Action | Add a Budget Line Modification | Adds a Budget Modification. |
Action | Look Up a Budget Line Modification | Looks up a Budget Line Modification. |
Action | Update a Budget Line Modification | Updates a Budget Line Modification. |
Action | Delete a Budget Line Modification | Deletes a Budget Modification. |
Action | Lock a Project Budget | Locks a Project Budget. |
Action | Unlock a Project Budget | Unlocks a Project Budget. |
Action | Check Project Budget | Checks Project Budget. |
Company - Offices | ||
Query | Search Company Offices | Searches all Company Offices based on search criteria. |
Action | Create Company Office | Creates Company Office. |
Action | Look Up a Company Office | Looks up a Company Office. |
Action | Update Company Office | Updates Company Office. |
Action | Delete Company Office | Deletes Company Office. |
Action | Fetch a Linked Company Office |
Fetches a Linked Company Office. |
Files | ||
Trigger | File Created | Triggers when a new file is created in the selected account and project. |
Trigger | File Updated | Triggers when an existing file is updated in the selected account and project. |
Trigger | File Deleted | Triggers when an existing file is deleted in the selected account and project |
Action | Create a File Version | Creates a new version of a specified file. The general file limit is 100 MB. |
Action | Update a File | Updates the specified file. The general file limit is 100 MB. |
Action | Delete a file | Deletes the specified file |
Action | Upload a file | Uploads the specified file. The general file limit is 100 MB. |
Query | Search files | Returns a list of files based on search criteria |
Action | Fetch a Linked File | Fetches a linked file based on specific criteria |
Action | Look up a file | Returns one file based on search criteria |
Albums | ||
Action |
Create an Album | Creates a new album |
Action |
Update an Album |
Updates a specified album |
Action |
Delete an Album |
Deletes a specified album |
Query |
Search Albums |
Returns a list of albums based on search criteria |
Action |
Fetch a Linked Album |
Fetches a linked album based on specific criteria |
Action | Look Up an Album | Returns one album based on search criteria |
Submittal | ||
Action |
Create Submittal |
Creates a new submittal |
Action |
Update Submittal |
Updates a specified submittal |
Action |
Update Submittal Approver |
Updates a specified submittal approver |
Action |
Delete Submittal |
Deletes a specified submittal |
Query |
Search Submittals |
Returns a list of submittals based on search criteria |
Action | Look Up a Submittal | Returns one submittal based on search criteria |
Image | ||
Action |
Upload an Image |
Uploads an image. The general file limit is 100 MB. |
Action |
Update an Image |
Updates an image. The general file limit is 100 MB. |
Action |
Delete an Image |
Deletes an image |
Query |
Search Images |
Returns a list of images based on search criteria |
Action |
Fetch a Linked Image |
Fetches a linked image based on specific criteria |
Action | Look Up an Image | Returns one image based on search criteria |
Folder | ||
Trigger |
Folder Created |
Triggers when a new folder is created in the selected account and project |
Trigger |
Folder Updated |
Triggers when a folder is updated in the selected account and project |
Trigger |
Folder Deleted |
Triggers when a folder is deleted in the selected account and project |
Action |
Create a Folder |
Creates a folder |
Action |
Update a Folder |
Updates a folder |
Action |
Delete a Folder |
Deletes a folder |
Action |
Fetch a Linked Folder |
Fetches a linked folder based on specific criteria |
Action | Look Up a Folder |
Returns one folder based on search criteria |
Purchase Orders |
||
Action |
Look Up a Purchase Order |
Looks Up a Purchase Order |
Query |
Search Purchase Orders |
Searches all Purchase Orders based on search criteria |
Trigger |
Purchase Order Created |
Triggers when a Purchase Order is created |
Trigger |
Purchase Order Updated |
Triggers when a Purchase Order is updated |
Limits
The general file limit is 100 MB.
The Procore API rate limits to 3,600 requests per hour. The rate limit resets every hour. There are three important response headers returned when making a request to the Procore API.
Note: The rate limit headers get returned only when using a Production Procore account (making requests to https://api.procore.com/rest/v1.0
).
Explanation | Header |
---|---|
X-Rate-Limit-Limit | The total number of requests per 60 minute window. |
X-Rate-Limit-Remaining | The number of requests you are allowed to make in the current 60 minute window. |
X-Rate-Limit-Reset | The Unix timestamp for when the next window begins. |
For example:
X-Rate-Limit-Limit: 3600
X-Rate-Limit-Remaining: 3599
X-Rate-Limit-Reset: 1466182244
When you exceed the rate limit, the client will receive a 429
status code. The rate limit headers will still be present. The response body will contain the following message.
You have surpassed the max number of requests for an hour. Please wait until your limit resets.
Use case examples
The following are some examples of using the Procore channel.
Syncing projects in Procore and Projects table in Quickbase
In this use case we want to create a dependency between a Procore project and a record in Quickbase. When you update the project in Procore, the record in Quickbase will also be updated. You can create the opposite workflow with a similar pipeline starting with a trigger step in Quickbase.
Prerequisite: you have to create a link between Procore projects and the corresponding records in the Projects table in Quickbase in a separate pipeline.
- We add a trigger step for Project update in Procore:
- Next, we fetch the linked record in Quickbase. The Resource is populated with the project from the previous step. Also, select the Projects table containing records corresponding to Procore projects.
- Finally, we add an Update Record step and for Record choose the one from the previous step. Select the desired fields to be updated and fill with the values from the trigger step (Step A).
Result: The records of the Quickbase Projects table now have the same values as the Procore projects.