home / skills / abdullahbeam / nexus-design-abdullah / hubspot-create-note

hubspot-create-note skill

/00-system/skills/hubspot/hubspot-create-note

This skill creates HubSpot note engagements quickly by supplying body content and optional timestamp, keeping records accurate and ready for follow-up.

npx playbooks add skill abdullahbeam/nexus-design-abdullah --skill hubspot-create-note

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
1.9 KB
---
name: hubspot-create-note
description: "Create a note engagement in HubSpot CRM. Load when user says 'create note', 'add note', 'new note', 'record note'. Requires body content."
---

# Create HubSpot Note

**Specialized skill** for creating note engagements in HubSpot CRM.

## Pre-Flight Check

Before running, execute config check:
```bash
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
- `--body` - Note content (required)

### Optional Parameters
- `--timestamp` - ISO timestamp (defaults to now)

### Examples

**Simple note:**
```bash
python 00-system/skills/hubspot/hubspot-master/scripts/create_note.py \
  --body "Spoke with John about pricing. He's interested in the enterprise tier." \
  --json
```

**Note with timestamp:**
```bash
python 00-system/skills/hubspot/hubspot-master/scripts/create_note.py \
  --body "Meeting notes from yesterday's call" \
  --timestamp "2025-12-12T14:00:00Z" \
  --json
```

---

## Output Format

```json
{
  "id": "16977760701",
  "properties": {
    "hs_note_body": "Spoke with John about pricing...",
    "hs_timestamp": "2025-12-13T10:00:00Z"
  }
}
```

---

## Display Format

```
✅ Note created!
  ID: 16977760701
  Content: Spoke with John about pricing. He's interested in the enterprise tier.
  Timestamp: 2025-12-13 10:00
```

---

## Best Practices

- Keep notes concise but informative
- Include action items and next steps
- Reference specific topics discussed
- Use for internal context that won't go in emails

---

## Error Handling

| Error | Solution |
|-------|----------|
| 401 | Invalid token - re-run setup |
| 403 | Missing `crm.objects.notes.write` scope |
| 429 | Rate limited - wait and retry |

---

## Related Skills

- `hubspot-list-notes` - List all notes
- `hubspot-get-associations` - Link note to contact/deal

Overview

This skill creates a note engagement in HubSpot CRM from a short text input. It is triggered by phrases like "create note", "add note", "new note", or "record note" and requires the note body to be provided. The skill returns the created note ID, stored body, and timestamp for confirmation.

How this skill works

The skill sends a request to HubSpot's engagements API to create a note object with the provided body and optional ISO timestamp. It validates the required parameters, uses configured HubSpot credentials and scopes, and returns the created note's ID and properties. If authentication or rate limits block the request, it surfaces concise error codes and remedial guidance.

When to use it

  • Capture meeting summaries or call highlights immediately after a conversation
  • Record internal context that shouldn’t be emailed but should live on a contact or deal timeline
  • Log action items and next steps tied to a CRM record
  • Add quick notes from mobile or chat without navigating the HubSpot UI
  • Backfill historical notes using the optional timestamp

Best practices

  • Keep notes concise and focused on outcomes or decisions
  • Include clear action items and owners when relevant
  • Reference topics or contacts to make later search easier
  • Use the optional timestamp to preserve original meeting times for accuracy
  • Avoid putting sensitive information that shouldn’t be stored in CRM

Example use cases

  • Quickly record a sales call summary: body = "Spoke with John about pricing; interested in enterprise tier"
  • Add follow-up tasks inside a note: body = "Action: send proposal by Friday; owner: Sarah"
  • Backfill notes from an old meeting using --timestamp to preserve chronology
  • Log internal context about a prospect that aids future reps but isn’t client-facing
  • Create notes from chatbots or voice transcriptions with the transcript as the body

FAQ

What parameter is required to create a note?

You must provide the note body text. Without it the note cannot be created.

How do I set the note time?

Provide an ISO 8601 timestamp to preserve the original time; otherwise the current time is used.

What if I get authentication or permission errors?

401 indicates invalid credentials; re-run setup. 403 means missing crm.objects.notes.write scope. 429 means rate limited—wait and retry.