Reports And Dashboards
Use this capability family for HubSpot reports, dashboards, and dashboard placement.
At A Glance
Section titled “At A Glance”| Supported actions | Bridge or hybrid actions | Access used |
|---|---|---|
| 6 | 6 | Varies by plan details |
Common Requests
Section titled “Common Requests”- Create a report for a named dashboard and specific business metric.
- Update dashboard layout or report configuration.
- Delete a dashboard or report only after confirming it is obsolete.
Review Checklist
Section titled “Review Checklist”- Confirm the target portal is correct.
- Check the operation names, target assets, and required access.
- Resolve missing-permission warnings before execution.
- Review operation results after execution.
- Confirm columns, filters, charts, and dashboard placement match the requested reporting question.
- Open important reports or dashboards in HubSpot after execution to confirm they render as expected.
Supported Actions
Section titled “Supported Actions”| Action ID | What it does | Execution | Required access | Main details |
|---|---|---|---|---|
create_dashboard | Create a HubSpot dashboard. | Requires the Daeda Bridge extension | No additional connected-portal scope | configuration details |
create_report | Create a HubSpot report. | Requires the Daeda Bridge extension | No additional connected-portal scope | configuration details |
delete_dashboard | Delete a HubSpot dashboard. | Requires the Daeda Bridge extension | No additional connected-portal scope | dashboard ID |
delete_report | Delete a HubSpot report. | Requires the Daeda Bridge extension | No additional connected-portal scope | report ID |
update_dashboard | Update a HubSpot dashboard. | Requires the Daeda Bridge extension | No additional connected-portal scope | dashboard ID, updates |
update_report | Update a HubSpot report. | Requires the Daeda Bridge extension | No additional connected-portal scope | report ID, updates |
Action Details
Section titled “Action Details”Create a HubSpot dashboard
Section titled “Create a HubSpot dashboard”Create a HubSpot dashboard. The draft records configuration details for review.
- Action ID:
create_dashboard - Change type: Create
- Execution: Requires the Daeda Bridge extension
- Required access: No additional connected-portal scope
- Main details reviewed in the plan: configuration details
- Planning notes:
- Dashboard widget layout uses a 6-column grid: x is 0-5, width is 1-6, x + width must not exceed 6, lower y values appear first/higher, and height controls card height.
- For a featured top-row report, use x 0 and width 6 at the lowest y value. For two equal supporting reports, use width 3 at x 0 and x 3 on the same greater y value.
- For explanatory text blocks, add a NOTE widget with a unique name and noteText. Omit reportId during create_dashboard.
- For same-plan report widgets, reference create_report outputs through reportId: { ref: ‘report.example’ }.
Create a HubSpot report
Section titled “Create a HubSpot report”Create a HubSpot report. The draft records configuration details for review.
- Action ID:
create_report - Change type: Create
- Execution: Requires the Daeda Bridge extension
- Required access: No additional connected-portal scope
- Main details reviewed in the plan: configuration details
- Planning notes:
- For advanced-builder record-count measures, use the builder system field { source:‘TABLE’, table:‘DEAL’, name:‘objectid’, type:‘number’ } with role MEASURE, domain CONTINUOUS, and aggregation DISTINCT_COUNT. objectid is not a CRM property and is not valid as a dimension or filter; use hs_object_id for property-backed dimensions and filters.
- For lifecycle-stage conversion funnels, avoid e_property_value_changed stages filtered by hs_name/hs_value because HubSpot renders them as invalid always-false filters. If exact lifecycle transitions are blocked, preserve the stage labels/order with render-safe event steps and explicitly comment on the fallback.
- Journey step filtering must use advanced condition/groups/stagedFilters, not simple top-level filters/filterBranchType.
- Use IS_EQUAL_TO, not EQ, for string filters such as hs_name and hs_value.
Delete a HubSpot dashboard
Section titled “Delete a HubSpot dashboard”Delete a HubSpot dashboard. The draft records dashboard ID for review.
- Action ID:
delete_dashboard - Change type: Delete
- Execution: Requires the Daeda Bridge extension
- Required access: No additional connected-portal scope
- Main details reviewed in the plan: dashboard ID
Delete a HubSpot report
Section titled “Delete a HubSpot report”Delete a HubSpot report. The draft records report ID for review.
- Action ID:
delete_report - Change type: Delete
- Execution: Requires the Daeda Bridge extension
- Required access: No additional connected-portal scope
- Main details reviewed in the plan: report ID
Update a HubSpot dashboard
Section titled “Update a HubSpot dashboard”Update a HubSpot dashboard. The draft records dashboard ID, updates for review.
- Action ID:
update_dashboard - Change type: Update
- Execution: Requires the Daeda Bridge extension
- Required access: No additional connected-portal scope
- Main details reviewed in the plan: dashboard ID, updates
- Planning notes:
- When updates.widgets is present it is the desired complete widget set: omitted report widgets and NOTE widgets are removed.
- To edit an existing NOTE, preserve its readback reportId and provide the new name/noteText. Omit reportId only when adding a new NOTE.
Update a HubSpot report
Section titled “Update a HubSpot report”Update a HubSpot report. The draft records report ID, updates for review.
- Action ID:
update_report - Change type: Update
- Execution: Requires the Daeda Bridge extension
- Required access: No additional connected-portal scope
- Main details reviewed in the plan: report ID, updates
- Planning notes:
- For advanced-builder record-count measures, use the builder system field { source:‘TABLE’, table:‘DEAL’, name:‘objectid’, type:‘number’ } with role MEASURE, domain CONTINUOUS, and aggregation DISTINCT_COUNT. objectid is not a CRM property and is not valid as a dimension or filter; use hs_object_id for property-backed dimensions and filters.
- Journey step filtering must use advanced condition/groups/stagedFilters, not simple top-level filters/filterBranchType.
- Use IS_EQUAL_TO, not EQ, for string filters such as hs_name and hs_value.
- For journey/funnel reports, put FUNNEL/SANKEY in top-level chartType; do not put FUNNEL in journeyQuery.visual.type.