Product

How Jentic Works

From API assessment to production deployment in four simple steps.

Product Overview

PLATFORM

Jentic OneSelf-hosted, open-source control plane between your agents and any APIAPI DirectoryBrowse 10,000+ APIs ready for AI agent integrationAPI ScorecardAssess your APIs for AI-readiness with automated scoringAgentic SandboxSafely simulate AI agents with your production APIsJenticSign in to the Jentic web app

CAPABILITIES

IntegrationConnect AI agents to your existing systemsWorkflowsDiscover and capture successful agent workflowsGovernanceDefine, observe, and enforce AI policies

TOOLS

Arazzo UIVisualize Arazzo workflows as interactive documentationArazzo EditorBuild and edit multi-step API workflows visually
Pricing
Developers

GET STARTED

DocumentationGuides and API referenceQuickstartGet up and running in minutes

COMMUNITY

GitHubOpen source projects and examples
Resources
BlogLatest articles and insightsPress & MediaBrand assets and press contactOpen StandardsBuilt on open specs. Never locked in.NewsletterAPIs, AI agents, mixed with architecture and strategy.
Company
About UsOur mission and teamCareersJoin our teamContactGet in touch
Install Jentic OneBook a Demo
How Jentic WorksJentic OneAPI DirectoryAPI ScorecardAgentic SandboxJenticIntegrationWorkflowsGovernanceArazzo UIArazzo Editor
Pricing
DocumentationQuickstartGitHub
BlogPress & MediaOpen StandardsNewsletter
About UsCareersContact
Request a demoInstall Jentic One
Jentic
For Enterprises
  • Product Overview
  • Agentic Sandbox
  • Book a Demo
For Developers
  • Jentic One
  • Documentation
  • GitHub
Company
  • About Jentic
  • Careers
  • Contact Us
ISO/IEC 27001:2022 certification badge issued by Prescient Security

Information Security Management System

Certified to ISO/IEC 27001:2022 by Prescient Security

Terms & Conditions•Privacy Policy•
© 2026 Jentic. All rights reserved.
APIs / CRM / Hubspot / Lists
Lists logo

HubSpot Lists

Browse all Hubspot APIs
✓ Official Vendor SpecCRMContact Managementoauth225 EndpointsREST

For Agents

Create and manage HubSpot CRM lists, edit filter definitions, add and remove records from lists, and organise lists into folders.

Use for: I need to create a static list of high-value contacts for a campaign, I want to add 500 contacts to an existing HubSpot list, Search for all lists scoped to the deals object, Find a list by its name without knowing its ID

Not supported: Does not handle marketing email sending, workflow execution, or contact property creation — use for HubSpot CRM list and membership management only.

The HubSpot CRM Lists API manages static and active (filter-defined) lists for any CRM object — contacts, companies, deals, custom objects. It supports list creation, deletion, renaming, filter-definition updates, membership add and remove, search across lists, folder organisation, and translation between legacy and modern list IDs. Use it to build segmentation logic, drive marketing or workflow membership, or programmatically curate audiences for downstream automation.

Jentic One on GithubView OpenAPI Document

Install Jentic One Beta

Connect the Lists to your agent

Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Lists, 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.

1

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 | sh
2

Step 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 instance

Jentic 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.

Capabilities

What an agent can do with Lists API.

Create static and active lists scoped to any object type with custom filter definitions

Add or remove records from a static list, individually or in bulk via the add-and-remove endpoint

Search across lists by name, type, or processing status

Update a list's filter definition to change which records qualify for an active list

Translate legacy v1 list IDs to modern v3 list IDs in batch for migration scripts

Move lists between folders and rename folders for organisational hygiene

Use Cases

Patterns agents use Lists API for, with concrete tasks.

★ Programmatic Audience Curation for Campaigns

Build a static list of contacts for a marketing send or workflow trigger by creating the list and then adding members in bulk. The Lists API exposes both a one-shot add endpoint and a combined add-and-remove endpoint, which is the right shape for incremental curation as new records qualify or fall out of scope. Lists of tens of thousands of members are routinely managed this way and feed directly into HubSpot Workflows.

POST /crm/v3/lists with a static list payload, capture the listId, then PUT /crm/v3/lists/{listId}/memberships/add with the contact IDs to add, in batches of up to 100.

Migrate from Legacy List IDs

Older HubSpot integrations stored v1 list IDs that are not interchangeable with the modern v3 list IDs returned by current endpoints. The Lists API offers single and batch ID translation endpoints so a migration script can rewrite stored references in bulk without manual lookup. Translating thousands of legacy IDs typically completes in a single batch request.

POST /crm/v3/lists/idmapping with an array of legacy list IDs and persist the returned modern IDs against each downstream record in the migration script.

Agent-Driven Active List Tuning

An AI agent that maintains marketing audiences can search for an active list by name, inspect its current filter definition, and update the filter when the underlying segmentation logic changes. Through Jentic, the agent finds the search and update operations by intent and chains them, which is useful for marketing-ops copilots that respond to brief updates.

Find the list with GET /crm/v3/lists/object-type-id/{objectTypeId}/name/{listName}, then PUT /crm/v3/lists/{listId}/update-list-filters with the revised filter branch.

Key Endpoints

25 endpoints — the hubspot crm lists api manages static and active (filter-defined) lists for any crm object — contacts, companies, deals, custom objects.

METHOD

PATH

DESCRIPTION

GET

/crm/v3/lists/{listId}

Fetch a list by ID

DELETE

/crm/v3/lists/{listId}

Delete a list

PUT

/crm/v3/lists/{listId}/update-list-name

Rename a list

PUT

/crm/v3/lists/{listId}/update-list-filters

Update an active list's filter definition

PUT

/crm/v3/lists/{listId}/memberships/add

Add records to a list

PUT

/crm/v3/lists/{listId}/memberships/add-and-remove

Add and remove records in a single call

POST

/crm/v3/lists/search

Search lists by name, type, or status

GET

/crm/v3/lists/{listId}

Fetch a list by ID

DELETE

/crm/v3/lists/{listId}

Delete a list

PUT

/crm/v3/lists/{listId}/update-list-name

Rename a list

PUT

/crm/v3/lists/{listId}/update-list-filters

Update an active list's filter definition

PUT

/crm/v3/lists/{listId}/memberships/add

Add records to a list

PUT

/crm/v3/lists/{listId}/memberships/add-and-remove

Add and remove records in a single call

POST

/crm/v3/lists/search

Search lists by name, type, or status

Why Jentic?

Three things that make agents converge on Jentic-routed access.

Credential management

Credential isolation

HubSpot OAuth and Private App tokens are stored encrypted in the Jentic vault. Agents receive scoped access references, never raw tokens.

Intent-based discovery

Intent-based discovery

Agents search by intent (e.g., 'add records to a HubSpot list') and Jentic returns the matching membership operation with its full input schema, including listId and member-ID array shape.

Time to first call

Time to first call

Direct integration: 2-3 days for OAuth, list filter shape, and membership sync. Through Jentic: under 1 hour.

Related APIs

Alternatives and complements available in the Jentic catalogue.

Complementary

HubSpot CRM Contacts

→

Lists are most commonly composed of contact records

Use CRM-contacts to find or create the contact records that will be added to a list

Complementary

HubSpot CRM Properties

→

Active list filters reference contact and object properties

Use CRM-properties to discover the property names and types that an active list filter can target

Complementary

HubSpot CRM Custom Objects

→

Lists can be scoped to custom object types in addition to standard objects

Use CRM-customObjects to define the schema before creating a list scoped to that object type

FAQs

Specific to using Lists API through Jentic.

What authentication does the HubSpot Lists API use?

OAuth 2.0 Bearer tokens or HubSpot Private App tokens in the Authorization header. Jentic stores the token encrypted in the vault and provides the agent with a scoped reference, so the raw token never enters the prompt.

Can I create a list that auto-updates as records change?

Yes. Create the list with a filter definition (an active list) and the membership is recomputed automatically as records change in the portal. PUT /crm/v3/lists/{listId}/update-list-filters can revise that definition later.

What are the rate limits for the HubSpot Lists API?

Standard HubSpot quotas apply: 100 requests per 10 seconds for OAuth apps and 110 for Private Apps, with daily caps that vary by Hub tier. Membership add and remove calls accept up to 100 record IDs per request, which is the recommended pattern for bulk curation.

How do I add contacts to an existing list through Jentic?

Run pip install jentic, call client.search('add records to a HubSpot list'), client.load to get the schema for PUT /crm/v3/lists/{listId}/memberships/add, and client.execute with the listId and an array of contact IDs.

Can I look up a list by name instead of ID?

Yes. GET /crm/v3/lists/object-type-id/{objectTypeId}/name/{listName} returns the list metadata for a given name and object type, which avoids storing list IDs in downstream systems.

How do I migrate from legacy v1 list IDs to v3 IDs?

POST /crm/v3/lists/idmapping accepts an array of legacy list IDs and returns the corresponding modern IDs in a single call. This is the recommended pattern for migration scripts that have legacy IDs persisted against downstream records.

GET STARTED

Start building with Lists API

Explore with Jentic
View OpenAPI Document