| name | hubspot-log-email |
| description | Log an email engagement in HubSpot CRM. Load when user says 'log email', 'record email', 'add email', 'email sent'. Requires subject and body. |
Log HubSpot Email
Specialized skill for logging email engagements in HubSpot CRM.
Pre-Flight Check
Before running, execute config check:
python 00-system/skills/hubspot/hubspot-master/scripts/check_hubspot_config.py --json
If ai_action is not proceed_with_operation, follow hubspot-connect setup guide.
Usage
Required Parameters
--subject- Email subject line (required)--body- Email body content (required)
Optional Parameters
--direction- EMAIL (sent) or INCOMING_EMAIL (received)--timestamp- ISO timestamp (defaults to now)
Examples
Log sent email:
python 00-system/skills/hubspot/hubspot-master/scripts/log_email.py \
--subject "Follow up on proposal" \
--body "Hi John, following up on our conversation about the enterprise package..." \
--json
Log received email:
python 00-system/skills/hubspot/hubspot-master/scripts/log_email.py \
--subject "Re: Proposal" \
--body "Thanks for sending over the details..." \
--direction "INCOMING_EMAIL" \
--json
Output Format
{
"id": "14389550562",
"properties": {
"hs_email_subject": "Follow up on proposal",
"hs_email_text": "Hi John, following up on...",
"hs_email_direction": "EMAIL",
"hs_email_status": "SENT",
"hs_timestamp": "2025-12-13T10:00:00Z"
}
}
Display Format
✅ Email logged!
ID: 14389550562
Subject: Follow up on proposal
Direction: Sent
Status: SENT
Timestamp: 2025-12-13 10:00
Error Handling
| Error | Solution |
|---|---|
| 401 | Invalid token - re-run setup |
| 403 | Missing crm.objects.emails.write scope |
| 429 | Rate limited - wait and retry |
Related Skills
hubspot-list-emails- List all emailshubspot-get-associations- Link email to contact