Hubspot Suite
by @luigi08001
Comprehensive HubSpot CRM, Marketing, Sales, Service, and CMS management suite. Covers all HubSpot APIs: CRM objects (contacts, companies, deals, tickets, cu...
clawhub install hubspot-suiteπ About This Skill
name: hubspot-suite description: "Comprehensive HubSpot CRM, Marketing, Sales, Service, and CMS management suite. Covers all HubSpot APIs: CRM objects (contacts, companies, deals, tickets, custom objects), associations, properties, engagements (calls, emails, meetings, notes, tasks), workflows & automation, lists, forms, email marketing, reporting & analytics, data quality & dedup, import/export, webhooks, pipelines, owners, CMS content, conversations, and commerce. Supports both Private App (API key) authentication and the new HubSpot Developer Platform (CLI-based apps). Use for ANY HubSpot-related task including CRM management, marketing automation, sales pipeline management, data migration, reporting, data quality audits, or HubSpot administration." metadata: openclaw: requires: env: - HUBSPOT_ACCESS_TOKEN primaryCredential: HUBSPOT_ACCESS_TOKEN
HubSpot Suite - Complete CRM & Marketing Platform
The ultimate HubSpot skill covering ALL aspects of the platform: CRM, Marketing, Sales, Service, CMS, and Developer tools.
Quick Start
1. Authentication Setup
# Private App (Recommended)
export HUBSPOT_ACCESS_TOKEN="pat-na1-xxx" # or pat-eu1-xxxLegacy API Key
export HUBSPOT_API_KEY="your-api-key"
See references/auth-setup.md for complete authentication guide including new Developer Platform.
2. Basic API Test
curl -H "Authorization: Bearer $HUBSPOT_ACCESS_TOKEN" \
"https://api.hubapi.com/crm/v3/objects/contacts?limit=1"
What Do You Want To Do?
CRM Management:
references/crm-contacts.md β Create, update, search contactsreferences/crm-companies.md β Company records, hierarchiesreferences/crm-deals.md β Sales pipeline, deal stagesreferences/crm-tickets.md β Support tickets, SLA managementreferences/crm-custom-objects.md β Custom object schemasData & Associations:
references/associations.md β Link records (contactβcompany, dealβcontact)references/properties.md β Custom properties, field groupsreferences/data-quality.md β Deduplication, data cleanupreferences/import-export.md β Bulk data migrationActivities & Automation:
references/engagements.md β Log calls, emails, meetings, tasksreferences/workflows.md β Automation, triggers, enrollmentreferences/pipelines.md β Configure pipelines, stagesMarketing & Sales:
references/lists.md β Contact lists, segmentationreferences/forms.md β Landing page formsreferences/email-marketing.md β Email campaignsreferences/conversations.md β Live chat, chatbotsAnalytics & Reporting:
references/reporting.md β Custom dashboards, KPIsreferences/webhooks.md β Real-time event notificationsContent & Commerce:
references/cms.md β Website pages, blog posts, HubDBreferences/commerce.md β Products, quotes, invoicesPlatform & Development:
references/developer-platform.md β HubSpot CLI, custom appsreferences/owners.md β User management, permissionsreferences/knowledge-base-tips.md β UI navigation, admin tasksMost Common Workflows
1. Import Contacts from CSV
./scripts/bulk-import.sh contacts contacts.csv
2. Find & Merge Duplicate Contacts
./scripts/find-duplicates.sh contacts email
./scripts/merge-records.sh contacts ID1 ID2
3. Create Deal with Associations
# Create deal
curl -X POST "https://api.hubapi.com/crm/v3/objects/deals" \
-H "Authorization: Bearer $HUBSPOT_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"properties": {
"dealname": "Big Deal",
"amount": "50000",
"dealstage": "qualifiedtobuy"
}
}'Associate to contact (type 3 = dealβcontact)
curl -X PUT "https://api.hubapi.com/crm/v3/objects/deals/DEAL_ID/associations/contacts/CONTACT_ID/3" \
-H "Authorization: Bearer $HUBSPOT_ACCESS_TOKEN"
4. Data Quality Audit
./scripts/data-audit.sh
5. Export Pipeline Report
./scripts/pipeline-report.sh > pipeline_report.csv
6. Log Activity (Call/Email/Meeting)
# Log a sales call
curl -X POST "https://api.hubapi.com/crm/v3/objects/calls" \
-H "Authorization: Bearer $HUBSPOT_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"properties": {
"hs_call_title": "Discovery Call",
"hs_call_duration": "1800000",
"hs_call_disposition": "Connected"
},
"associations": [{
"to": { "id": "CONTACT_ID" },
"types": [{ "associationCategory": "HUBSPOT_DEFINED", "associationTypeId": 194 }]
}]
}'
Script Usage
All scripts are in scripts/ directory. Make executable first:
chmod +x scripts/*.sh
Universal API Helper:
./scripts/hs-api.sh GET /crm/v3/objects/contacts
./scripts/hs-api.sh POST /crm/v3/objects/companies '{"properties":{"name":"ACME"}}'
Data Management:
./scripts/bulk-import.sh [object-type] [csv-file]
./scripts/bulk-export.sh [object-type] [output-file]
./scripts/find-duplicates.sh [object-type] [property]
./scripts/merge-records.sh [object-type] [primary-id] [duplicate-id]
Reports & Analytics:
./scripts/data-audit.sh > audit-report.txt
./scripts/pipeline-report.sh > pipeline-analysis.csv
API Fundamentals
Rate Limits
Pagination
All list endpoints useafter parameter:
curl "https://api.hubapi.com/crm/v3/objects/contacts?after=12345&limit=100"
Error Handling
Common Headers
-H "Authorization: Bearer $HUBSPOT_ACCESS_TOKEN"
-H "Content-Type: application/json"
Batch Operations Pattern
curl -X POST "https://api.hubapi.com/crm/v3/objects/contacts/batch/create" \
-H "Authorization: Bearer $HUBSPOT_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"inputs": [
{"properties": {"firstname": "John", "lastname": "Doe"}},
{"properties": {"firstname": "Jane", "lastname": "Smith"}}
]
}'
Search Filters & Operators
Filter Syntax
{
"filters": [{
"propertyName": "email",
"operator": "EQ",
"value": "john@example.com"
}]
}
Operators
Advanced Search Example
curl -X POST "https://api.hubapi.com/crm/v3/objects/contacts/search" \
-H "Authorization: Bearer $HUBSPOT_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"filters": [{
"propertyName": "createdate",
"operator": "GTE",
"value": "2024-01-01"
}],
"sorts": [{"propertyName": "createdate", "direction": "DESCENDING"}],
"limit": 100
}'
Environment Variables
Set these in your shell/environment:
# Required
export HUBSPOT_ACCESS_TOKEN="pat-na1-xxx" # Private app tokenOptional
export HUBSPOT_API_KEY="xxx" # Legacy API key
export HUBSPOT_PORTAL_ID="12345" # For some API calls
export HUBSPOT_BASE_URL="https://api.hubapi.com" # Override for testing
Need Help?
1. API Issues: Check references/rate-limits.md and references/search-filters.md
2. Authentication: See references/auth-setup.md
3. UI Tasks: Check references/knowledge-base-tips.md
4. Data Problems: Use references/data-quality.md
5. Specific Objects: Find the relevant references/crm-*.md file
This skill covers the entire HubSpot platform. Start with the reference file that matches your task, then use the scripts to automate repetitive operations.
π‘ Examples
1. Authentication Setup
# Private App (Recommended)
export HUBSPOT_ACCESS_TOKEN="pat-na1-xxx" # or pat-eu1-xxxLegacy API Key
export HUBSPOT_API_KEY="your-api-key"
See references/auth-setup.md for complete authentication guide including new Developer Platform.
2. Basic API Test
curl -H "Authorization: Bearer $HUBSPOT_ACCESS_TOKEN" \
"https://api.hubapi.com/crm/v3/objects/contacts?limit=1"