home / skills / abdullahbeam / nexus-design-abdullah / hubspot-list-contacts
This skill lists HubSpot contacts with email, name, phone, and company, returning paginated results for easy browsing.
npx playbooks add skill abdullahbeam/nexus-design-abdullah --skill hubspot-list-contactsReview the files below or copy the command above to add this skill to your agents.
---
name: hubspot-list-contacts
description: "List contacts from HubSpot CRM. Load when user says 'list contacts', 'show contacts', 'get contacts', 'hubspot contacts'. Returns paginated contact list with email, name, phone, company."
---
# List HubSpot Contacts
**Specialized skill** for listing contacts from 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
### Basic List (default 10 contacts)
```bash
python 00-system/skills/hubspot/hubspot-master/scripts/list_contacts.py --json
```
### With Limit
```bash
python 00-system/skills/hubspot/hubspot-master/scripts/list_contacts.py --limit 25 --json
```
### With Pagination (after cursor)
```bash
python 00-system/skills/hubspot/hubspot-master/scripts/list_contacts.py --after "cursor_value" --json
```
---
## Output Format
```json
{
"results": [
{
"id": "12345",
"properties": {
"email": "[email protected]",
"firstname": "John",
"lastname": "Doe",
"phone": "+1234567890",
"company": "Acme Corp"
},
"url": "https://app.hubspot.com/contacts/.../record/0-1/12345"
}
],
"paging": {
"next": {
"after": "cursor_for_next_page"
}
}
}
```
---
## Display Format
Present results to user as:
```
Found {count} contacts:
1. John Doe
Email: [email protected]
Phone: +1234567890
Company: Acme Corp
ID: 12345
2. Jane Smith
Email: [email protected]
...
```
---
## Error Handling
| Error | Solution |
|-------|----------|
| 401 | Invalid token - re-run setup |
| 403 | Missing `crm.objects.contacts.read` scope |
| 429 | Rate limited - wait and retry |
---
## Related Skills
- `hubspot-create-contact` - Create new contact
- `hubspot-search-contacts` - Search by email/name
- `hubspot-update-contact` - Update existing contact
This skill lists contacts from HubSpot CRM and returns a paginated contact list with key fields like email, name, phone, company, and contact ID. It is designed for quick retrieval of recent contacts or for browsing large contact sets with cursor-based pagination. Results are formatted for easy display and follow HubSpot API conventions.
The skill calls the HubSpot Contacts API to fetch contact records and returns results along with paging cursors for subsequent requests. Each contact includes id, properties (email, firstname, lastname, phone, company) and a link to the HubSpot record. It supports limit and after (cursor) parameters to control page size and pagination. The skill performs a config check before operation to ensure credentials and scopes are valid.
What fields are returned for each contact?
Each contact includes id, email, firstname, lastname, phone, company, and a HubSpot record URL when available.
How do I get more contacts than the default?
Specify a larger limit parameter and use the paging.after cursor to retrieve subsequent pages.
What if I get a 401, 403, or 429 error?
401 means invalid token—re-run setup; 403 indicates missing crm.objects.contacts.read scope; 429 means rate limited—wait and retry.