For Agents
Register and manage custom CRM sidebar cards for a HubSpot app so external data is surfaced inside the HubSpot record UI.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the CRM cards, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with CRM cards API.
Register a custom CRM card definition for a HubSpot app
Update card metadata such as title, fetch URL, and target object types
Delete a card definition that is no longer in use
Retrieve a sample card response to validate card rendering
GET STARTED
Use for: I need to register a CRM sidebar card for my HubSpot app, Update the fetch URL of an existing CRM card, List all CRM cards configured for an app, Retrieve a sample CRM card response payload
Not supported: Does not handle CRM contact, company, deal, or ticket CRUD — use for registering CRM sidebar card extensions only.
Jentic publishes the only available OpenAPI document for CRM cards, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for HubSpot CRM Cards, keeping it validated and agent-ready. The CRM Cards API lets a HubSpot app extend the CRM UI by surfacing custom cards in the sidebar of contact, company, deal, and ticket record pages. Apps register card definitions up front, including the data fetch URL HubSpot calls when a record loads. The card definitions, sample-response shape, and per-app card list are all managed through this API.
List every CRM card configured for an installed app
Configure which CRM record types a card appears on
Patterns agents use CRM cards API for, with concrete tasks.
★ External Data on CRM Records
Many sales teams want to see external data — billing status, support tickets in another system, product usage scores — directly on the HubSpot contact or company record. The CRM Cards API registers a card definition that points HubSpot at a fetch URL on your service. When a CRM user opens the record, HubSpot calls the URL and renders the response as a card in the sidebar.
Create a card definition for app 12345 with title 'Account Health', fetch URL https://example.com/hubspot/cards/account-health, and target object types CONTACT and COMPANY
Card Definition Lifecycle
As an integration evolves, card titles, fetch URLs, and target object types change. The PATCH endpoint updates the definition in place; the DELETE endpoint removes it when the card is retired. The list endpoint provides the inventory used by deployment scripts and by the app's own admin UI.
List all card definitions for app 12345, find the card with title 'Legacy Health Score', and DELETE it
Card Response Validation
Before deploying a new card, developers run the sample-response endpoint to see exactly what payload shape HubSpot expects. This avoids the trial-and-error loop of installing the app, opening a record, and inspecting failed renderings. The sample is canonical, so engineering can mock it in tests.
Call GET /crm/v3/extensions/cards/sample-response and return the exact card payload schema for use as a test fixture
Agent-Driven Card Provisioning
An AI agent that owns a HubSpot app's deployment process uses Jentic to register and update CRM cards as part of release automation. It searches for 'register hubspot crm card', loads the schema, and posts the new definition. Subsequent runs detect drift and PATCH the definition to match.
Search Jentic for 'register hubspot crm card', load the schema, and create or update the card definition for the current app to match the desired-state config
6 endpoints — jentic publishes the only available openapi specification for hubspot crm cards, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/crm/v3/extensions/cards/{appId}
Create a CRM card definition
/crm/v3/extensions/cards/{appId}
List card definitions for an app
/crm/v3/extensions/cards/{appId}/{cardId}
Get a single card definition
/crm/v3/extensions/cards/{appId}/{cardId}
Update a card definition
/crm/v3/extensions/cards/{appId}/{cardId}
Delete a card definition
/crm/v3/extensions/cards/sample-response
Retrieve a canonical sample card response payload
/crm/v3/extensions/cards/{appId}
Create a CRM card definition
/crm/v3/extensions/cards/{appId}
List card definitions for an app
/crm/v3/extensions/cards/{appId}/{cardId}
Get a single card definition
/crm/v3/extensions/cards/{appId}/{cardId}
Update a card definition
/crm/v3/extensions/cards/{appId}/{cardId}
Delete a card definition
Three things that make agents converge on Jentic-routed access.
Credential isolation
HubSpot developer hapikeys are stored encrypted in the Jentic vault. Agents receive a scoped token at execution time and the raw developer key never enters the agent's context.
Intent-based discovery
Agents search by intent (e.g., 'register hubspot crm card') and Jentic returns POST /crm/v3/extensions/cards/{appId} with its input schema, including the required objectTypes and fetch URL fields.
Time to first call
Direct HubSpot integration: 2-3 days for developer key handling, card schema design, and fetch URL implementation. Through Jentic: under 1 hour for the API calls themselves — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
HubSpot Custom Workflow Actions
Workflow actions extend automation while CRM cards extend the record UI
Use CRM Cards when the extension surfaces in the record sidebar; use Custom Workflow Actions when the extension runs as a workflow step.
HubSpot Webhooks API
Webhooks deliver record-change events that drive cached data shown in CRM cards
Pair CRM Cards (display data) with Webhooks (refresh cached data on contact updates) for a complete extension.
Salesforce REST API
Salesforce Lightning Components are the equivalent extension surface in Salesforce CRM
Pick Salesforce Lightning when the CRM is Salesforce; pick HubSpot CRM Cards when extensions need to render inside HubSpot record pages.
Specific to using CRM cards API through Jentic.
Why is there no official OpenAPI spec for HubSpot CRM Cards?
HubSpot does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call HubSpot CRM Cards via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the HubSpot CRM Cards API use?
It uses the developer hapikey passed as a query parameter on every request, scoped to the developer account that owns the app. Jentic stores the developer key in its encrypted vault and provides agents with a scoped token at execution time so the raw key never enters the agent's context.
Can a CRM card appear on multiple object types?
Yes. The card definition body accepts an objectTypes array — for example ['CONTACT', 'COMPANY', 'DEAL', 'TICKET'] — and HubSpot renders the card on every record of those types. Update the array via PATCH /crm/v3/extensions/cards/{appId}/{cardId} when targeting changes.
What are the rate limits for the HubSpot CRM Cards API?
Standard developer API limits apply: 100 requests per 10 seconds per developer account. Card definition operations are infrequent (typically deployment time only), so the limit rarely matters; the runtime fetch URL HubSpot calls is governed by your own service's capacity.
How do I register a new CRM card through Jentic?
Search Jentic for 'register hubspot crm card', load the schema for POST /crm/v3/extensions/cards/{appId}, and execute with the card title, fetch URL, and objectTypes array. Use GET /crm/v3/extensions/cards/sample-response to confirm the payload shape your fetch URL must return.
Is the HubSpot CRM Cards API free?
API access is included with HubSpot's developer programme, which is free to join. Cards render in any HubSpot portal that has installed the app, regardless of the portal's subscription tier.
/crm/v3/extensions/cards/sample-response
Retrieve a canonical sample card response payload