For Agents
List or fetch HubSpot CMS-connected domains and their content roles, so an agent can pick the right domain before publishing pages or posts.
Get started with Domains in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"list hubspot cms connected domains"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Domains API.
List every domain connected to a HubSpot CMS account in one call
Retrieve the configuration for a specific domain by domainId
Confirm whether SSL is enabled before publishing content to a domain
Identify which domain serves blog posts versus landing pages before routing a publish action
Detect the primary language of a domain to choose between locale-specific publish flows
GET STARTED
Use for: List all CMS domains for this HubSpot account, Retrieve the configuration for domain ID 12345, Find the primary domain for the marketing blog, Check whether the landing page domain has SSL enabled
Not supported: Does not connect, modify, or remove domains, and does not expose DNS or certificate details — use for reading existing HubSpot-connected CMS domains only.
The HubSpot CMS Domains API exposes the domains connected to a HubSpot CMS account. It returns the canonical domain name, the type of content it serves (blog, site pages, landing pages), SSL status, and primary-language flag. Use it when an agent needs to confirm which domain to publish to before creating CMS content, or to audit which domains a portal currently uses for marketing assets.
Patterns agents use Domains API for, with concrete tasks.
★ Pre-Publish Domain Selection
Before an agent or integration publishes a landing page or blog post, it must select the correct connected domain. The Domains API returns the list of available domains with their content type and language so the publishing flow can pick the right destination automatically. This prevents content being scheduled on a staging or stale domain.
Call GET /cms/v3/domains/, filter for type='LANDING_PAGE' and language='en', and pass the returned domainId into the next CMS Pages create call.
SSL and Configuration Audit
Marketing operations teams sometimes inherit HubSpot portals with mixed SSL configurations across connected domains. A single GET on the Domains endpoint returns the SSL status and other configuration flags for every domain, supporting a remediation report without portal access. Failing entries can be flagged for HubSpot Support follow-up.
Fetch /cms/v3/domains/, write a CSV of domain, sslEnabled, primaryLanguage, and contentType, and flag any row where sslEnabled is false.
Multi-Brand Domain Inventory
Agencies running several brands on one HubSpot portal need to know which domains belong to which Business Unit before scheduling content. Pairing this API's full domain list with the Business Units API yields an inventory mapping each brand to its public-facing domains, useful for governance dashboards and onboarding playbooks.
Call /cms/v3/domains/, then for each domain attach the Business Unit ID returned by the Business Units API, producing one row per (brand, domain) pair.
Agent-Driven Domain Lookup
An AI agent that publishes content needs a deterministic way to choose between, say, blog.example.com and pages.example.com. Through Jentic the agent searches for the domain list operation, loads the schema, and executes it without seeing raw OAuth tokens. The structured response is small enough to embed directly into the agent's planning context.
Use Jentic to search 'list hubspot cms domains', load the schema, execute it, and store the resulting (domainId, contentType) pairs in the agent state for later publish steps.
2 endpoints — the hubspot cms domains api exposes the domains connected to a hubspot cms account.
METHOD
PATH
DESCRIPTION
/cms/v3/domains/
List all connected domains
/cms/v3/domains/{domainId}
Retrieve a single domain by ID
/cms/v3/domains/
List all connected domains
/cms/v3/domains/{domainId}
Retrieve a single domain by ID
Three things that make agents converge on Jentic-routed access.
Credential isolation
HubSpot OAuth tokens and Private App keys live in the Jentic encrypted vault (MAXsystem). The agent receives only a scoped execution token, so the underlying secret never enters its context.
Intent-based discovery
Agents search Jentic with intents like 'list hubspot cms domains' and receive the matching operation plus an input schema ready to execute.
Time to first call
Direct integration: a few hours to wire OAuth and parse the domain list. Through Jentic: under 20 minutes from search to first successful call.
Alternatives and complements available in the Jentic catalogue.
CMS Pages
Publishes the pages that live on the domains returned by this API
Use CMS Pages right after Domains when the agent needs to publish a landing page on the chosen domain.
Blog Settings
Configures the blogs hosted on these domains
Use Blog Settings when the agent needs to align blog configuration with a specific connected domain.
URL Redirects
Manages redirects across the same connected domains
Use URL Redirects when the agent must redirect traffic between paths or domains rather than read the domain itself.
Specific to using Domains API through Jentic.
What authentication does the HubSpot CMS Domains API use?
It accepts HubSpot OAuth 2.0 access tokens or Private App tokens in the Authorization header with the content scope. Through Jentic, those credentials are stored encrypted and only a scoped execution token is exposed to the agent.
Can I add or remove a connected domain via this API?
No. The two endpoints in this spec are both GET — connecting a new domain or detaching one must be done from the HubSpot UI. Once connected, the API can read its configuration.
What are the rate limits for the HubSpot Domains API?
It uses HubSpot's standard public API caps: 100 requests per 10 seconds for OAuth apps and 110 per 10 seconds for Private Apps on Pro and Enterprise. Domain lists are short, so a single GET typically suffices instead of polling.
How do I pick the right domain to publish a blog post through Jentic?
After pip install jentic, search 'list hubspot cms domains', load the schema, and execute it. Filter the response for contentType matching BLOG_POST and the desired primaryLanguage, then pass the domainId into the CMS Posts create call.
Does the API expose DNS records or certificate details?
Not directly. It surfaces high-level fields like sslEnabled and the canonical domain name, but raw DNS records and certificate metadata must be inspected from the registrar or HubSpot's domain settings UI.