skillfed

hubspot-api-client

HubSpot API client

hubspot-api-client v12.0.0 4.1M downloads/30d#2,381 on PyPI433
Permissive license Apache-2.0 Active released

What it is and what it does

The hubspot-api-client is an official Python SDK that wraps HubSpot's API v3 endpoints, providing typed access to CRM objects (contacts, companies, deals), OAuth token management, CMS audit logs, and file uploads. It abstracts away HTTP details and handles authentication, allowing developers to interact with HubSpot data programmatically using Python objects and methods rather than raw REST calls.

The package includes utilities for OAuth URL generation, webhook signature validation, and HTTP retry configuration via urllib3. It supports both paginated retrieval of all records and filtered search queries. For endpoints not yet wrapped by the SDK, a direct api_request method exposes the underlying HTTP client with all configured credentials and retry logic already applied.

Use it for:

  • Sync contact and company data from HubSpot into a Python application or data pipeline.
  • Create or update CRM records (contacts, deals, custom objects) programmatically from external systems.
  • Validate incoming HubSpot webhook requests to ensure they originate from HubSpot.
  • Implement OAuth2 authentication flow to obtain user-delegated access tokens for multi-tenant apps.
  • Upload files to HubSpot and organize them in folders via the Files API.
  • Search CRM records by date, property values, or custom filters without fetching all results.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Python SDK for the HubSpot API v3 that provides typed client access to CRM, OAuth, CMS, and Files endpoints with built-in retry and signature validation support.

Yes. The package is actively maintained, has no known vulnerabilities, installs with low friction, and is permissively licensed. It is the official HubSpot Python SDK and the standard choice for integrating HubSpot APIs into Python applications. Install it if you need to interact with HubSpot's CRM, OAuth, or file APIs from Python.

Install

hubspot-api-client on PyPI

pip

pip install hubspot-api-client

uv

uv add hubspot-api-client

poetry

poetry add hubspot-api-client

Installing hubspot-api-client

Before you install

Low install friction with six common dependencies (requests, urllib3, six, certifi, python-dateutil, importlib-metadata). Package is actively maintained with a recent release on 2025-05-07 and an active GitHub repository.

License in practice

Licensed under Apache-2.0 (permissive), allowing use in commercial and private projects with minimal restrictions beyond attribution.

Quickstart

pip install hubspot-api-client

from hubspot import HubSpot

api_client = HubSpot(access_token='your_access_token')
contact = api_client.crm.contacts.basic_api.get_by_id('contact_id')

Requires Python 3.7 or later and a valid HubSpot access token (obtained via private app or OAuth2).

Verify before relying

  • Whether the package supports all current HubSpot API v3 endpoints or if some remain unwrapped.
  • Performance characteristics when handling large result sets with pagination.
  • Compatibility with async/await patterns or if only synchronous requests are supported.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.7)
Install friction low — pure-Python wheel
Runtime dependencies 6 — requests, urllib3, six, certifi, python-dateutil, importlib-metadata
Maintenance actively maintained — 464 days since the last release
Last repo commit
First released
Downloads 4,099,956/month — #2,381 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: hubspot_api_client-12.0.0-py3-none-any.whl

Tags

hubspot api client pythoncrm contact management sdkhubspot oauth integrationhubspot api v3 pythonhubspot crm contacts dealshubspot files upload apihubspot webhook signature validation
crm-integrationapi-clientoauth

More WWW/HTTP packages