Working with Multi-Structure Jobs
Available in v2.0.0 and later.
A single Hover job can hold several structures, such as a house plus a detached garage. Hover calls each structure a model. In Salesforce, each structure is stored as a Hover Model record (Hover_Model__c) under its Hover Job, with its own deliverable, reconstruction state, measurements, and estimates.
How Hover Models are created
You don't create Hover Models yourself. The integration creates and updates them from Hover's webhook events:
- A structure is added. When Hover identifies a structure on a job, it sends a
model-createdevent. The integration creates a Hover Model under the matching Hover Job, then syncs the structure's name, state, and deliverable from Hover. - A structure's state changes. As the structure moves through reconstruction, Hover sends
model-state-changedevents, and the integration updates the Hover Model to match. - A structure is complete. When a structure's state becomes
complete, the integration retrieves its roof and siding measurements and writes them to its Hover Model.
A job's structures don't always finish at the same time, so one Hover Model can have measurements while another is still processing.
Viewing structures and measurements
- Hover Models related list: The Hover Job record page lists all of the job's structures in the Hover Models related list.
- Hover Model record page: Each Hover Model has its own record page (the default for the object) and a Hover Models tab. The page shows the structure's details and measurements.
- Hover Model Measurements component (
hoverModelMeasurements): Shows the roof and siding measurements for one structure. It's on the default Hover Model record page. If you use a custom page, add it in Lightning App Builder. - Hover PDF Link component (
hoverPDFLink): On a Hover Model page, it opens that structure's measurements PDF. The button turns on once the structure's state iscomplete, and a tooltip explains why it's disabled until then.
Roof Only and Complete structures
Each structure has its own Deliverable. A Complete structure fills in both the roof and siding measurement fields. A Roof Only structure fills in only the roof fields and leaves the siding fields blank.
Job-level measurement fields
The roof and siding measurement fields on Hover Job are still present, but they're no longer updated as of v2.0.0. Point any reports, flows, or page layouts that use them at Hover Model instead.
Estimates by structure
Hover Estimates (Hover_Material_List__c), Estimate Line Items (Hover_Estimate_Line_Item__c), and Adjustments (Hover_Adjustment__c) each have a Hover Model lookup (Hover_Model__c) alongside the Hover Job lookup. Use it to report on estimates by structure, or to show a structure's estimates on its Hover Model page.
Automating on structures
To act when a structure's measurements arrive, build a record-triggered flow on Hover Model that runs when State changes to complete. Use the model's Hover Job lookup to reach the parent job and any record it's related to.
A job with more than one structure has more than one set of measurements. Decide whether your automation should handle each structure separately, total them across structures, or only use one.
Note: The
HOVER_Job_Complete__eplatform event was removed in v2.0.0. If you had automation listening for it, rebuild it on Hover Model state changes.
Creating test jobs
Use test jobs to try multi-structure behavior without capturing a real property.
- Go to the Hover Jobs tab, open a list view, and click Create Test Job.
- Wait about 1–2 minutes while Hover creates the job and the data flows back into Salesforce.
- Open the new Hover Job. Its Hover Models related list should show three structures, each with measurements once its state is
complete.
Note: You can only create test jobs from the parent (authenticated) Hover org, meaning the org whose Hover user authorized the Salesforce connection. Test jobs can't be created from a suborg.
Update Job Status button
The Update Job Status component (updateJobStatusButton) is for integration testing only. It sets a test state on the whole job, so use it only on jobs with a single structure. It's hidden once the job's Reconstruction State is completed.
Troubleshooting
| Symptom | What to check |
|---|---|
| No Hover Models appear on a job | The guest site user and the Hover permission set can access HoverHandleModelWebhook and HoverQueueableModelSync. |
| A Hover Model's measurements stay blank | The structure's State is complete. If it is, check that the guest site user and the Hover permission set can access HoverQueueableModelMeasurementsQuery. |
| A Hover Model shows a Failure Reason | Hover needs more information for that structure. Check the job in Hover. This field can be filled in even when the state is complete. |
| Create Test Job fails | The Salesforce connection is authorized with the parent Hover org, not a suborg. |
| Reports or flows that use measurements stopped updating | They still read the job-level fields on Hover Job. Point them at Hover Model instead. |
Updated about 18 hours ago

