For Agents
Create, query, batch-process, and associate custom CRM object records in HubSpot. Supports search, merge, upsert, and cross-object associations for any user-defined object type.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the HubSpot CRM Custom Objects, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# 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 HubSpot CRM Custom Objects API.
Search custom object records using filters, property values, and full-text queries
Batch-create or upsert hundreds of custom object records in a single API call
Associate custom objects with contacts, companies, deals, or other custom types
GET STARTED
Use for: I need to create a new custom object record in HubSpot, Search for custom objects matching specific property filters, I want to associate a custom object with a contact or deal, Batch-upsert custom object records from an external data source
Not supported: Does not handle custom object schema definitions, contact management, deal pipelines, or marketing automation — use for custom object record operations only.
Jentic publishes the only available OpenAPI specification for HubSpot CRM Custom Objects, keeping it validated and agent-ready. Define and operate on bespoke CRM object types that extend HubSpot beyond standard contacts, companies, deals, and tickets. Store industry-specific records — such as vehicles, properties, or subscriptions — with full association, search, batch, and merge support across the HubSpot CRM graph. Requires an Enterprise-tier HubSpot account.
Merge duplicate custom object records into a single canonical entry
Retrieve individual records with selected properties and association expansions
Bulk-read custom objects by record IDs or a unique property identifier
Remove associations between custom objects and standard CRM records
Patterns agents use HubSpot CRM Custom Objects API for, with concrete tasks.
★ AI Agent Custom Object Automation
AI agents use HubSpot CRM Custom Objects through Jentic to automate record creation and association for industry-specific data models. An agent can search for matching records by property value, batch-upsert new entries from external systems, and wire associations to standard HubSpot objects — all without manual CRM configuration. Through Jentic, agents discover the correct endpoints via intent search, load the schema, and execute operations in under a minute.
Search for custom object records of type 'vehicle' where the 'vin' property matches a given value, then associate the matching record with an existing contact by contact ID
Industry-Specific CRM Data Modeling
Extend HubSpot CRM to store domain-specific records that do not fit contacts, companies, deals, or tickets. Custom objects let real estate firms track properties, auto dealers track vehicles, or SaaS companies track subscription tiers — each with typed properties, associations, and searchability identical to native HubSpot objects. The API supports up to 10 custom object definitions on Enterprise plans.
Create a batch of 50 custom object records of type 'property_listing' with address, price, and status properties using the batch/create endpoint
Duplicate Record Merging
Identify and merge duplicate custom object records to maintain data hygiene across the CRM. The merge endpoint combines two records by retaining the primary record's ID and associations while absorbing the secondary record's unique data. This is critical for pipelines that ingest data from multiple sources where duplicates are common.
Merge custom object record ID 456 into primary record ID 123 of type 'subscription' using the merge endpoint
Cross-Object Association Management
Build a connected CRM graph by associating custom objects with contacts, companies, deals, tickets, or other custom types. The API supports both labeled and default association types, enabling relationship semantics like 'owned by' or 'related to'. Associations are bidirectional and immediately reflected in the HubSpot UI timeline.
Create a default association between a custom object record of type 'vehicle' (ID 789) and a contact (ID 101) using the PUT associations endpoint
15 endpoints — jentic publishes the only available openapi specification for hubspot crm custom objects, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/crm/v3/objects/{objectType}/search
Search custom objects by property filters
/crm/v3/objects/{objectType}
Create a single custom object record
/crm/v3/objects/{objectType}/batch/create
Batch-create custom object records
/crm/v3/objects/{objectType}/batch/upsert
Batch-upsert records by unique property
/crm/v3/objects/{objectType}/merge
Merge two custom object records
/crm/v3/objects/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}
Associate a custom object with another record
/crm/v3/objects/{objectType}/{objectId}
Retrieve a single custom object record
/crm/v3/objects/{objectType}
List custom object records by type
/crm/v3/objects/{objectType}/search
Search custom objects by property filters
/crm/v3/objects/{objectType}
Create a single custom object record
/crm/v3/objects/{objectType}/batch/create
Batch-create custom object records
/crm/v3/objects/{objectType}/batch/upsert
Batch-upsert records by unique property
/crm/v3/objects/{objectType}/merge
Merge two custom object records
Three things that make agents converge on Jentic-routed access.
Credential isolation
HubSpot OAuth 2.0 tokens are stored encrypted in the Jentic vault (MAXsystem). Agents receive scoped access tokens with custom object permissions — raw client secrets and refresh tokens never enter the agent's context.
Intent-based discovery
Agents search by intent (e.g., 'create a custom object in HubSpot') and Jentic returns matching Custom Objects operations with their input schemas, including required objectType path parameters and property maps.
Time to first call
Direct HubSpot Custom Objects integration: 2-4 days for OAuth flow, schema discovery, and association handling. Through Jentic: under 1 hour — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
Specific to using HubSpot CRM Custom Objects API through Jentic.
Why is there no official OpenAPI spec for HubSpot CRM Custom Objects?
HubSpot does not publish an OpenAPI specification for their Custom Objects API. Jentic generates and maintains this spec so that AI agents and developers can call HubSpot CRM Custom Objects 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 Custom Objects API use?
The API uses OAuth 2.0 with scopes specific to CRM object access. Tokens must include the crm.objects.custom.read and crm.objects.custom.write scopes. Through Jentic, OAuth tokens are stored encrypted in the MAXsystem vault and agents receive scoped access without handling refresh flows directly.
Can I batch-upsert custom object records with this API?
Yes. The POST /crm/v3/objects/{objectType}/batch/upsert endpoint accepts up to 100 records per call. Each record is matched by a unique property you specify (such as an external ID), and existing matches are updated while new records are created. This avoids duplicates when syncing from external systems.
How do I search for custom object records through Jentic?
Use Jentic's intent search with a query like 'search custom objects in HubSpot'. Jentic returns the POST /crm/v3/objects/{objectType}/search operation with its input schema. The search endpoint accepts filter groups with property name, operator, and value to return matching records. Install the SDK with pip install jentic to get started.
What are the rate limits for the HubSpot CRM Custom Objects API?
HubSpot applies a burst limit of 100 requests per 10 seconds per OAuth app and a daily limit of 250,000 API calls for Enterprise accounts. Batch endpoints count as a single request regardless of the number of records included, making them more rate-efficient for bulk operations.
Can I associate custom objects with standard HubSpot CRM objects?
Yes. The PUT /crm/v3/objects/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId} endpoint creates associations between any custom object record and contacts, companies, deals, tickets, or other custom objects. Associations are bidirectional and support both default and labeled relationship types.
Do I need a HubSpot Enterprise account to use Custom Objects?
Yes. Custom objects are only available on HubSpot Enterprise plans. Free, Starter, and Professional tiers cannot define or use custom object types. The API requires Enterprise-level OAuth credentials with custom object scopes enabled.
/crm/v3/objects/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}
Associate a custom object with another record
/crm/v3/objects/{objectType}/{objectId}
Retrieve a single custom object record
/crm/v3/objects/{objectType}
List custom object records by type