Connect HubSpot to use it as your team's CRM. Once connected, you can link HubSpot companies and contacts to tasks, boards, roadmap projects and River pages. HubSpot stays the source of truth: Fishladder keeps a reference to each record and never edits it.
Only team admins can connect or disconnect HubSpot.
While HubSpot is connected, Fishladder's built-in CRM is turned off for everyone on the team, admins included. It disappears from the app switcher, and the CRM pages, API endpoints and Claude connector tools stop accepting changes. This stops people from keeping a second, divergent set of companies and contacts. Your existing CRM data isn't deleted, and it comes back if you disconnect HubSpot.
Open a task, a roadmap project or a River page and find the HubSpot section. Click Link, search by name, domain or email, and pick the record. Each linked record opens in HubSpot. The same record can't be linked to the same item twice.
Link a HubSpot company to a whole board in Board settings (the settings icon in the board header). Every task on that board then counts as that company's — including tasks created later — which is what Slack channel alerts use to post “task created for Acme”. A task is a company's when the company is linked to the task, its board, or a roadmap project the task is linked to.
fish hubspot search acme, then fish hubspot link task <taskId> <hubspotId>. Use project or page instead of task (pages accept the short ID from fish river pages or a title), and add --contact for contacts. Needs CLI v0.19.0 or later.search_hubspot, link_hubspot_record, list_hubspot_links and unlink_hubspot_record.GET /api/v1/hubspot/search?type=company&q=acme, and GET/POST/DELETE on /api/v1/tasks/{id}/hubspot-links, /api/v1/tracker/projects/{id}/hubspot-links (boards), /api/v1/projects/{id}/hubspot-links and /api/v1/river/pages/{id}/hubspot-links.Sync rules define what data flows from Fishladder to HubSpot and how fields are mapped. Each rule connects a Fishladder source type to a HubSpot object type.
Once a sync rule is created, click Sync Now to push matching Fishladder records to HubSpot. The sync creates new HubSpot records for items that haven't been synced before, and updates existing records that have changed.
Each sync run is logged in the Sync Log, which shows:
To disconnect HubSpot, click Disconnect on the Integrations page. This removes the OAuth connection and all sync rules, and turns the Fishladder CRM back on. Records already synced to HubSpot are not affected. Links are kept but hidden, and they reappear if you reconnect the same HubSpot portal.
Fishladder requests read and write access to HubSpot contacts, companies, and deals. The OAuth scopes requested are:
crm.objects.contacts.read / writecrm.objects.companies.read / writecrm.objects.deals.read / write