There's a new version of the HubSpot API

As of November 30, 2022, HubSpot API keys are no longer a supported authentication method for accessing HubSpot APIs. Instead, you should use a private app access token or OAuth to authenticate API calls. Learn more about this change and how to migrate an API key integration to use a private app instead.

List domains

Last updated May 31, 2023

GET /cos-domains/v1/domains

Method Details

HTTP Methods:


Response Format:


Requires Authentication?


Rate Limited?






Get the domains set up in HubSpot. Supports paging and filtering.

There is a newer version of this API available.

Required Parameters How to use Description
OAuth access token or private app access token Authorization: Bearer {token} header Used to authenticate the request. Please see this page for more details about authentication.

Optional query string filters & options

If a parameter supports a filter type of 'gt', that means you can append a double underscore to the parameter name to find all items greater than the value. For example, the following query will find all items created than the 'updated' time:
Parameter name Description
limit The number of items to return. Defaults to 20
offset The offset set to start returning rows from. Defaults to 0.
created exact, range, gt, gte, lt, lte
domain exact
id exact
is_resolving exact
primary_site_page exact

Example GET URL:

JSON Fields returned in the response

Parameter name Type Description
created long When the domain was first created, in milliseconds since the epoch
domain string The actual domain or subdomain
id string The unique id of the domain
is_any_primary string True if this domain is primary for any category
is_dns_correct string True if DNS for this domain is optimally configured for use with HubSpot
is_legacy_domain string True is this domain is setup for use with the classic CMS
is_resolving string True if this domain is pointing to HubSpot servers
manually_marked_as_resolving string True if a user manually marked this domain as resolving. This is needed when their is some unique setup or proxy server involved, and the COS can not automatically detect if the domain is properly resolving
primary_blog_post string True if this domain is primary for COS blog posts
primary_email string True if this domain is primary for viewing emails as web page
primary_landing_page string True if this domain is primary for COS landing pages
primary_legacy_page string True if this domain is primary for the classic CMS
primary_site_page string True if this domain is primary for COS site pages
secondary_to_domain string The name of the domain that this domain redirects to. Only set for non-primary domains
updated long When the domain was last updated, in milliseconds since the epoch