Trigger: Procore Event
Note: In order to use this trigger, you must connect GoFormz to your Procore account. See here for details.
This trigger fires when a notification from a connected Procore account comes in on a predefined GoFormz endpoint. It leverages Procore Project Webhooks as well as Procore Company Webhooks, making it flexible enough to be activated by a wide range of Procore events. These events include changes to many Procore resources (e.g. Incidents, Change Orders, Tasks, etc.), as well as creation/deletion of various Procore resources.
Inputs
Input | Value | |
---|---|---|
Event Type | Required | This must be set to handleEvent . No other values are accepted at this time. |
project_id | Optional | The ID of the Procore Project whose event you want to use as a trigger. If left unspecified, events from any project will serve as a trigger. |
resource_name | Optional | The type of resource whose event you want to use as a trigger (e.g. Incident, Submittal, etc.). If left unspecified, events from any resource type will serve as a trigger. |
event_type | Optional | The type of event that you want to use as a trigger. This can be one of three values: create , update or delete . If left unspecified, any event type will serve as a trigger. |
In addition to the inputs detailed above, this trigger also contains a read-only webhook URL. This URL is used to configure the notification endpoint for the Procore webhook. See the Setup section below for details.
Outputs
The outputs of this trigger include everything that Procore sends on their webhook request. We go over the most useful outputs below. Please refer to Procore Webhook documentation for a complete list.
Output | Value |
---|---|
user_id | The ID of the Procore User that initiated the event. |
company_id | The ID of the Procore Company in which the event occurred. |
project_id | The ID of the Procore Project in which the event occurred. |
resource_name | The type of resource in which the event occurred (e.g. Incident, Submittal, etc.). |
resource_id | The ID of the specific resource in which the event occurred (e.g. the ID of the Incident). |
event_type | The type of event that happened within the Resource specified by resource_id . This can be one of three values: create , update or delete . |
timestamp | The UTC date and time when the event occurred. |
Setup
In order to set up a Procore Event, you must first configure the Webhook on the Procore side. Procore lets you create webhooks at both the Company level and the Project level, and GoFormz supports both. The webhook scope you choose will depend on your specific use case.
- To configure a webhook at the Company level, navigate to the Company Admin page, then click Webhooks in the Administrative Settings section on the right. See here for details.
- To configure a webhook at the Project level, navigate to the Project Admin page, then click Webhooks in the Project Settings section on the right. See here for details.
This will open the Webhooks page, where you can configure your webhook's endpoint and triggers.
First, configure the endpoint by cut-and-pasting the Webhook URL from your GoFormz trigger into the Notification Endpoint field on the Webhooks page. This is the URL to which Procore will send a request when the webhook is triggered, alerting GoFormz to initiate the workflow.
Next, select the desired triggering event or events. In the example above, our webhook will fire when a new Incident is created.
Usage Notes
This trigger is typically used to dispatch a GoFormz form based on a Procore event. It can also be used to sync information from Procore to a GoFormz DataSource, or to update an existing form.
For instance, suppose you want to dispatch an Incident Form as soon as a new Incident is created in your Procore project, in order to collect additional information about the incident. Your project ID is 23498237. You would set up the webhook on the Procore side to be initiated by an incident creation, then create a GoFormz workflow using this Procore Event trigger with the following inputs:
Key | Value |
---|---|
Event Type | handleEvent |
project_id | 23498237 |
event_type | create |
resource_name | Incident |
Next, if you want to use Procore data to pre-fill some fields in your form, you can extract this data using the Query and Lookup Object actions. And finally you would use a Create Form action to create the form. Since the trigger returns all the relevant IDs, you should have all the necessary inputs for these actions. In our example, you might use the trigger's project_id
and resource_id
outputs to look up information about the incident that triggered the workflow, or leverage the company_id
and user_id
to look up information about the user that initiated the event.
Updated about 5 years ago