Appearance
HubSpot integration
Joltuar connects to a HubSpot portal so your team's call summaries, action items and deal updates can land in the CRM your sales team already uses. One connection serves the whole Joltuar workspace — you don't reconnect per user.
What it does
Once connected, HubSpot shows up as a tool source for the Joltuar Assistant (the chat panel, and the same tools over MCP for external AI clients):
- Look things up — search deals by name, read a deal's properties and custom properties, and list its notes and tasks.
- Write updates on request — add a note to a deal, create or update a task, and update a deal's custom properties. Every write always shows you a confirmation card first; nothing is pushed to HubSpot silently from chat.
- Post-call automation — a Workflow step (
hubspot_post_call_update) that runs after a call to append the summary to the deal (as a note, or onto the matching meeting engagement), create one follow-up task, and optionally update deal value or a no-show property. This runs automatically once a workflow is set up and approved for your workspace — see "Post-call automation" below.
Joltuar never creates a new deal, never renames one, and never moves it between pipeline stages — those stay decisions a person makes in HubSpot.
Who can connect
Only a workspace owner or admin can start (and later disconnect) the HubSpot connection — Joltuar enforces this at connect time, not just at disconnect. Whichever HubSpot user approves the consent screen is the account the connection is minted for; Joltuar can only see and edit what that HubSpot user's account has access to in your portal.
Prerequisites
- A HubSpot account with permission to authorize a new app on your portal (typically a HubSpot admin or super admin).
- A Joltuar workspace you're signed into, with the owner/admin role.
Connect HubSpot
- In Joltuar, open your account menu (bottom of the sidebar) and choose Integrations.
- Find the HubSpot card. It shows two disclosure lines before you connect — read them, since HubSpot's own consent screen phrases one permission more broadly than what Joltuar actually does (see below).
- Click Connect.
- You're sent to HubSpot's own authorization screen for your portal. Review the permissions and approve.
- You're redirected back to Joltuar. The card now shows "Connected · portal
<your-hub-domain>" instead of the description text.
Or start from the HubSpot App Marketplace
You can also start the connection from HubSpot's side: clicking Install on Joltuar's App Marketplace listing opens Joltuar's Integrations screen directly (signing you in first, if you weren't already). A workspace owner or admin then clicks Connect there to approve HubSpot's consent screen, same as above. This works because the listing's "Install button URL" points at https://app.joltuar.com/?screen=integrations&connect=hubspot.
What data flows, and in which direction
HubSpot → Joltuar (read): deal names, properties and custom properties, notes and tasks already on a deal, company/contact data used only to match a meeting to the right deal (attendee e-mail domains, company names), and owner information used for attribution.
Joltuar → HubSpot (write, only when you ask in chat or a workflow runs): deal notes (or an append to the matching meeting engagement), tasks, deal custom-property values, and — if your workflow enables it — a deal's value or a no-show property you've mapped. Notes and tasks are attributed to the matched deal's HubSpot owner when that can be resolved; property updates always show as authored by whoever connected the integration, because HubSpot has no author override for those.
Joltuar never creates or edits a HubSpot contact, even though the consent screen asks for permission to modify contacts (see below).
Permissions we request and why
| Scope | What it's for |
|---|---|
oauth | Required by HubSpot on every OAuth app; identifies the connection. |
crm.objects.deals.read / crm.objects.deals.write | Read deal data, and write the notes/tasks/field updates you or a workflow asked for. |
crm.objects.contacts.read / crm.objects.contacts.write | Read is used to match a meeting's attendees to a deal via their contact record. Write is required by HubSpot for a different reason: notes and tasks have no permission scope of their own upstream, so HubSpot gates those endpoints behind the contacts-write scope. Joltuar does not have any code path that creates or edits a contact — it only ever writes notes, tasks and deal properties. |
crm.objects.companies.read | Read company records, used to match a meeting to a deal by the attendees' company domain. |
crm.schemas.deals.read | Read your portal's deal property definitions (the field catalog), so field mappings and updates only ever touch real, writable properties. |
crm.objects.owners.read | Resolve a deal's owner, so notes and tasks can be attributed to them. |
Disconnect
From Joltuar: Integrations → HubSpot → Disconnect (workspace owner/admin only). This immediately stops all reads and writes, deletes the stored connection from Joltuar, and asks HubSpot to revoke the refresh token.
From HubSpot: open HubSpot → Settings → Integrations → Connected Apps, find Joltuar, and remove it. Unlike some integrations, HubSpot does not notify Joltuar the moment you do this — Joltuar detects the disconnect automatically the next time it tries to refresh the connection (typically within about 30 minutes) and marks the integration disconnected on our end. If you need it gone from Joltuar immediately, also click Disconnect in Joltuar.
Troubleshooting
| Symptom | What's happening | What to do |
|---|---|---|
| The HubSpot card isn't on the Integrations screen | Your workspace may not have this integration turned on yet | Contact support@joltuar.app |
| Only owner/admin can see a working Connect button | This is intentional — HubSpot requires the connecting account to have admin-level access to your portal | Ask a workspace owner/admin to connect |
| A chat write says "not connected" or asks you to reconnect | HubSpot's refresh token died (uninstalled from HubSpot's side, or the connecting user lost portal access) | Reconnect from the Integrations screen |
| A field update in chat says "unknown field" | The property name doesn't exist, was renamed, or is read-only/calculated in your HubSpot portal | Check the property still exists and is editable, then ask again |
| A deal-value update was skipped for "no currency" | Your portal is single-currency, or the call didn't explicitly state a currency | Not a bug — Joltuar won't guess a currency change, since that would silently corrupt reporting |
| Post-call updates aren't happening | Post-call automation runs from a Workflow, not from the Integrations card | Set up a Workflow with a meeting.processed trigger calling the HubSpot update step — see the Workflows screen, or contact support@joltuar.app if you don't see it |
Need help?
Email support@joltuar.app. For how Joltuar handles your data, see our Privacy Policy and Terms of Service.
