How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

HubSpot Communication Preferences Subscriptions API

HubSpot Communication Preferences Subscriptions — 10 operation(s) from HubSpot's published OpenAPI.

HubSpot Communication Preferences Subscriptions API is one of 144 APIs that HubSpot publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 692 JSON Schema definitions.

Tagged areas include Communication, Preferences, and Subscriptions. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, code examples, and 692 JSON Schemas.

This API exposes 10 operations across 8 paths, organized into 3 resource areas, and defines 25 schemas. It is described by OpenAPI 3.0.1, at version 2026-09.

Requests are made against a single base URL, https://api.hubapi.com.

10 operations 8 paths 25 schemas 3 GET7 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.1
API Version
2026-09
Base URL
https://api.hubapi.com
Authentication
API Key, OAuth 2.0, API Key, API Key
Resource Areas
3

Authentication & Security 4

HubSpot Communication Preferences Subscriptions API declares 4 security schemes for authenticating requests. An API key is passed in the query as hapikey (developer_hapikey). It supports OAuth 2.0 (oauth2) using the authorizationCode flow, exposing 3 scopes. An API key is passed in the header as private-app (private_apps). An API key is passed in the header as private-app-legacy (private_apps_legacy).

Paths & Operations 10

Across 8 paths, the API surfaces 10 operations — 3 GET, 7 POST. They span 3 resource areas: Definitions, Status, Batch. Each is listed below with its method, path, parameters, and response codes.

Definitions 2
GET
/communication-preferences/2026-09/definitions
Retrieve all subscription status definitions
get-/communication-preferences/2026-09/definitions 2 params → 200default
POST
/communication-preferences/2026-09/statuses/{subscriberIdString}/unsubscribe-all
Unsubscribe a contact from all subscriptions
post-/communication-preferences/2026-09/statuses/{subscriberIdString}/unsubscribe-all 4 params → 200default
Status 4
POST
/communication-preferences/2026-09/links/generate
Generate subscription links
post-/communication-preferences/2026-09/links/generate_/communication-preferences/v4/links/generate 2 params body → 200default
GET
/communication-preferences/2026-09/statuses/{subscriberIdString}
Get subscription preferences for a specific contact
get-/communication-preferences/2026-09/statuses/{subscriberIdString} 3 params → 200default
POST
/communication-preferences/2026-09/statuses/{subscriberIdString}
Update a contact's subscription status
post-/communication-preferences/2026-09/statuses/{subscriberIdString} 1 param body → 200default
GET
/communication-preferences/2026-09/statuses/{subscriberIdString}/unsubscribe-all
Retrieve a contact's unsubscribed status
get-/communication-preferences/2026-09/statuses/{subscriberIdString}/unsubscribe-all 4 params → 200default
Batch 4
POST
/communication-preferences/2026-09/statuses/batch/read
Batch retrieve subscription statuses
post-/communication-preferences/2026-09/statuses/batch/read 2 params body → 200207default
POST
/communication-preferences/2026-09/statuses/batch/unsubscribe-all
Batch unsubscribe contacts from all subscriptions
post-/communication-preferences/2026-09/statuses/batch/unsubscribe-all 3 params body → 200default
POST
/communication-preferences/2026-09/statuses/batch/unsubscribe-all/read
Batch retrieve contacts who have opted out of all communications
post-/communication-preferences/2026-09/statuses/batch/unsubscribe-all/read 2 params body → 200207default
POST
/communication-preferences/2026-09/statuses/batch/write
Batch update subscription status
post-/communication-preferences/2026-09/statuses/batch/write body → 200default

Schemas 25

The contract defines 25 schemas that model the data the API accepts and returns. The most detailed are SubscriptionDefinition (12 properties), PublicStatus (11 properties), StandardError (8 properties), BatchResponsePublicWideStatusBulkResponseWithErrors (8 properties). Each schema is shown below with its type and property counts.

ActionResponseWithResultsPublicStatus
object
8 properties 4 required
ActionResponseWithResultsPublicWideStatus
object
8 properties 4 required
ActionResponseWithResultsSubscriptionDefinition
object
8 properties 4 required
BatchInputPublicStatusRequest
object
1 property 1 required
BatchInputString
object
1 property 1 required
BatchResponsePublicBulkOptOutFromAllResponse
object
8 properties 4 required
BatchResponsePublicStatus
object
8 properties 4 required
BatchResponsePublicStatusBulkResponse
object
6 properties 4 required
BatchResponsePublicStatusBulkResponseWithErrors
object
8 properties 4 required
BatchResponsePublicWideStatusBulkResponse
object
6 properties 4 required
BatchResponsePublicWideStatusBulkResponseWithErrors
object
8 properties 4 required
Error
object
Represents an error response returned by the API when an operation fails. This component is used in various endpoints to provide detailed information about the…
7 properties 3 required
ErrorDetail
object
Represents detailed information about an error that occurred in the API. This component is used to provide additional context and specifics about errors, typic…
5 properties 1 required
LinkGenerationRequest
object
3 properties 1 required
LinkGenerationResponse
object
4 properties 3 required
PartialPublicStatusRequest
object
5 properties 3 required
PublicBulkOptOutFromAllResponse
object
2 properties 1 required
PublicStatus
object
11 properties 6 required
PublicStatusBulkResponse
object
2 properties 2 required
PublicStatusRequest
object
6 properties 4 required
PublicSubscriptionTranslation
object
6 properties 6 required
PublicWideStatus
object
6 properties 5 required
PublicWideStatusBulkResponse
object
2 properties 2 required
StandardError
object
Ye olde error
8 properties 6 required
SubscriptionDefinition
object
12 properties 8 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

hubspot-communication-preferences-subscriptions-api-openapi.yml Raw ↑

Other APIs HubSpot publishes across the network.

HubSpot URL Redirects API
HubSpot Pipelines API
HubSpot Products API
HubSpot Line Items API
HubSpot Quotes API
HubSpot CRM Properties API
HubSpot Owners API
HubSpot CRM Imports API
HubSpot Custom Objects API
HubSpot Marketing Events API
HubSpot Forms API
HubSpot Workflows API
Where this information came from

This is an independent, third-party profile of HubSpot Communication Preferences Subscriptions API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.