# Build Secure HubSpot CRM Integrations

HubSpot integrations require careful authentication, object handling, pagination, and webhook processing. This skill provides practical Node.js and Python patterns for common CRM workflows.

## Install

```bash
npx skillstore add sickn33/hubspot-integration
```

## Metadata

- Status: approved
- Slug: sickn33-hubspot-integration
- Skillstore revision: r2
- Version status: missing
- Tree hash: c3e10e7885ce8d84bcca73849b1bdebdbb98cf68b8c6a616b3003422d3cd0154
- Author: sickn33
- GitHub username: sickn33
- License: MIT
- Repository: https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/hubspot-integration
- Ref: 88a8e9a07f4c54ab105c1c41b6267c287146b07b
- Supported tools: Claude, Codex, Claude Code
- Audit status: complete
- Agent install advisory: confirmation\_required
- Manual install advisory: allowed
- Artifact signature: available
- Audit attestation: unavailable
- Human verification: not\_verified
- Risk factors: external\_commands, network, env\_access
- Quality score: 38
- Quality tier: warning
- Public page: https://skillstore.pages.dev/skills/sickn33-hubspot-integration
- Manifest: https://skillstore.pages.dev/api/skills/sickn33-hubspot-integration/manifest

## Capabilities

- Drafts OAuth 2.0 and private app authentication flows for HubSpot.
- Creates examples for contact CRUD, search, pagination, and batch operations.
- Models associations between contacts, companies, and deals with Associations v4.
- Outlines webhook receipt, signature checks, timestamp checks, and asynchronous processing.
- Defines custom object schemas and record operations.
- Highlights rate limits, token rotation, deprecations, and validation checks.

## Use Cases

- Synchronize CRM contacts: Design contact creation, updates, searches, pagination, and batches for an application integration.
- Configure an internal CRM connection: Plan a private app integration with scoped access, token handling, associations, and rate-limit controls.
- Review webhook ingestion: Assess signature verification, replay protection, response timing, and queued event processing before deployment.

## Prompt Templates

### Connect a private app

```
Create a Node.js HubSpot private app client using an environment variable. Add paginated contact retrieval and bounded rate-limit retries.
```

### Build contact synchronization

```
Design a contact synchronization workflow for these source fields: [fields]. Include search, create, update, batching, pagination, and partial-failure handling.
```

### Implement secure webhooks

```
Create an Express HubSpot webhook handler. Verify signature v3 using the raw body, method, URI, and timestamp. Add replay protection and queuing.
```

### Architect a multi-account integration

```
Design a multi-account HubSpot integration for [requirements]. Cover OAuth state, token rotation, scopes, associations, custom objects, throttling, observability, and recovery.
```

## Limitations

- Examples require adaptation to the installed HubSpot SDK version and application framework.
- Credentials, scopes, portal permissions, queues, storage, and deployment infrastructure are not provided.
- Custom objects require an eligible HubSpot Enterprise subscription.
- Security-sensitive examples require review because the included OAuth state and webhook v3 verification patterns are incomplete.

## Best Practices

- Request only required HubSpot scopes and keep tokens in a managed secret store.
- Implement cursor pagination, bounded retries, and rate-limit backoff for every list or bulk workflow.
- Validate OAuth state and HubSpot webhook v3 signatures against raw request data before processing.

## Anti Patterns

- Do not hardcode private app tokens, OAuth client secrets, or access tokens.
- Do not process webhook payloads before authenticating the signature and checking timestamp freshness.
- Do not issue unbounded parallel requests or ignore pagination and partial batch failures.

## Security Audit

- Audited at: 2026-07-24T00:24:18.722\+00:00
- Summary: The static findings are false positives involving expected HubSpot API requests, scoped environment variables, JavaScript interpolation, and CRM identifier mapping. However, the OAuth example omits state validation, and the webhook example does not implement HubSpot signature v3 correctly.

## Stats

- Views: 188
- Downloads: 11
- Favorites: 0
- Popularity score: 0
