Using Webhooks

Register webhooks to receive real-time notifications of key events, such as all policy data becoming available after an end-user submits on your Canopy Connect widget.

To register a webhook, specify a web endpoint and select the event types you wish to subscribe to. Canopy Connect's infrastructure will send POST requests to the web endpoint you specify. You can register webhooks from the Settings page on the Canopy Connect dashboard or using the Webhooks API.

Each webhook request represents an event occurring on a specific data Pull. You can use the returned pull_id to fetch the complete information for the data Pull using the GET /pulls/:pullId endpoint.

Event Types

These are the event types you can subscribe to:

Event TypeDescription
AUTH_STATUSThis event is triggered when a Pull transitions to a new authentication state.
POLICY_AVAILABLEThis event is triggered when the policy data for an insurance policy becomes available.
POLICIES_AVAILABLEThis event triggers once per Pull, when policy data for all insurance policies is available. Does not include documents.
COMPLETEThis event occurs once per Pull, once all information (including documents) is available. Each servicing request also ends with one COMPLETE when every change reached the carrier.
ERRORThis event is triggered when a Pull encounters an error while running. Each servicing request that does not fully reach the carrier ends with one ERROR.
SERVICING_STATUS_UPDATEDThis event is triggered when a ServicingAction reaches a new status you can act on, or when Canopy's servicing team takes it over.
SERVICING_WAITING_FOR_CONSUMER_CONFIRMATIONDeprecated. No longer sent: servicing never waits on the consumer. Webhooks subscribed to it keep working. Use SERVICING_STATUS_UPDATED instead.
MONITORING_RECONNECTThis event is triggered when a Monitoring Pull requires user input to complete authentication.
DATA_UPDATEDThis event is triggered when data on a pull is updated or added.
MONITORING_EVENTSThis event is triggered when a Monitoring Pull has run and we have identified changes in policy data from the previous pull.
POLICY_STREAM_UPDATESThis event is triggered when a Policy Stream's daily run ends and its changes are ready to sync. It is about a Policy Stream, not a Pull, so it has no pull_id.

Webhooks about a servicing request have pull_type: "SERVICING". Their pull_id is the servicing Pull Canopy runs the change on, not the Pull you requested servicing for. Match them to your request by servicing_action_id (returned by POST /servicings), or poll GET /servicings with the original pull_id.