Procore v2

Provides integration with Procore, a construction management platform for project information and construction business processes.

Use the Node to query and change Procore records through JSON REST operations selected from templates. Templates supply the route, query, request, and response fields for each supported operation.

Revision History

0.0.0.10 - Improved structured templates, request handling and Runtime compatibility.
0.0.0.6 - Names generated scalar and array response wrappers Value.
0.0.0.7 - Improves structured template inputs and date conversion.

Connection

Property Type Description
Environment Enum Production, DeveloperSandbox, or MonthlySandbox. Defaults to Production. On-demand sandboxes also use Production with their own company IDs.
Company ID String Company used for routing requests. May be omitted for List Companies and unscoped user information.
Client ID String OAuth client identifier for the selected environment.
Client Secret Masked OAuth client secret for the selected environment.
Access Token Masked Bearer token obtained through account authorization, or supplied directly.
Refresh Token Masked Token used to renew access after authorization. Automatic renewal also requires client credentials.
Timeout (seconds) Integer Maximum duration of each request. Defaults to 120.

Setup Notes

Run this Node on a Cloud Runtime. Register and install a Procore app with the permissions required for your operations, then configure the Connection for the matching environment and complete account authorization. Enter the target Company ID.

Select a template for the required API operation and version. Templates are available without downloading metadata. Their available operations are determined by the installed Node version. Replace placeholder identifiers and map structured child Properties before running.

Methods

Query

Executes a GET operation and follows Procore Link pagination automatically.

Parameter Type Description
Connection Connection Connection used to authenticate the operation.
OperationId String Operation selected by the template. Select a template to populate this value.
Options Object Documented route, query, and non-authentication header values. Company routing and pagination are managed by the Connection and Node.
Return Type Description
Response Array Individual provider records without added Flowgear metadata. REST v2 data envelopes are removed. Empty collections produce zero rows; provider failures stop the query.

Create

Executes the selected POST operation.

Parameter Type Description
Connection Connection Connection used to authenticate the operation.
OperationId String Operation selected by the template. Select a template to populate this value.
Options Object Documented route, query, and non-authentication header values. Company routing and pagination are managed by the Connection and Node.
Items Array One complete provider JSON body per item, including any required resource wrapper. A native batch body can be an array within a single item. Omit for bodyless operations.
Return Type Description
Response Array Provider response fields plus Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. The request echo is the original input item, or Options for a bodyless operation.

Update

Executes the selected PATCH operation, including supported merge-patch requests.

Parameter Type Description
Connection Connection Connection used to authenticate the operation.
OperationId String Operation selected by the template. Select a template to populate this value.
Options Object Documented route, query, and non-authentication header values. Company routing and pagination are managed by the Connection and Node.
Items Array One complete provider JSON body per item, including any required resource wrapper. A native batch body can be an array within a single item. Omit for bodyless operations.
Return Type Description
Response Array Provider response fields plus Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. The request echo is the original input item, or Options for a bodyless operation.

Replace

Executes the selected PUT operation using the provider replacement or update contract.

Parameter Type Description
Connection Connection Connection used to authenticate the operation.
OperationId String Operation selected by the template. Select a template to populate this value.
Options Object Documented route, query, and non-authentication header values. Company routing and pagination are managed by the Connection and Node.
Items Array One complete provider JSON body per item, including any required resource wrapper. A native batch body can be an array within a single item. Omit for bodyless operations.
Return Type Description
Response Array Provider response fields plus Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. The request echo is the original input item, or Options for a bodyless operation.

Delete

Executes the selected DELETE operation after explicit confirmation.

Parameter Type Description
Connection Connection Connection used to authenticate the operation.
OperationId String Operation selected by the template. Select a template to populate this value.
Options Object Documented route, query, and non-authentication header values. Company routing and pagination are managed by the Connection and Node.
Items Array One complete provider JSON body per item, including any required resource wrapper. A native batch body can be an array within a single item. Omit for bodyless operations.
ConfirmDelete Boolean Defaults to false. Set true after reviewing the operation and target, including collection-level deletions.
Return Type Description
Response Array Provider response fields plus Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. The request echo is the original input item, or Options for a bodyless operation.

Usage Notes

Request shapes and company routing

Preserve provider field casing and request wrappers. For a project create request, place its fields inside the required project object in each item. Map object and array children or use parsed JSON; do not put a literal scalar Value on a structured container. Optional query examples are not executable defaults.

The Connection supplies the Procore-Company-Id header and documented company_id route/query fields. A documented root company_id body field is filled when absent. Conflicting company IDs and manual page or per_page controls are rejected.

Dates and response bindings

Workforce Planning epoch fields such as expr_date, start_date, est_end_date, closed_date, created_at, and updated_at use DateTime Properties and convert to or from Unix milliseconds. Upload expiry fields url_expires_at and upload_expires_at use Unix seconds. Conversion follows the selected operation schema; nulls and millisecond precision are preserved. Numeric epoch inputs remain supported. Date-only requests use yyyy-MM-dd; timezone-free date inputs use UTC.

After upgrading, refresh templates to remove older stored container Values. If a response uses the connector-generated scalar or array wrapper, update Response.value bindings to Response.Value. Provider-owned object fields, including a provider value field, retain their names.

Failures and streaming

The first query page or write completes before output streaming begins. Initial provider, authentication, and input failures fail the invocation. Later per-item mutation failures return unsuccessful rows so remaining inputs can continue. Inspect each result.

Writes are not automatically retried after throttling, timeouts, or uncertain transport outcomes. Check Procore before repeating a write. Independent input items are not combined automatically into a provider batch.

Known Issues

Only supported JSON operations are exposed. Multipart uploads, binary responses, GET bodies, deprecated endpoints, and OAuth token endpoints are excluded. Client-credentials token acquisition and Federal Zone hosts are not exposed. Invalid continuation links, repeated links, or more than 10,000 pages fail the query.