Product

How Jentic Works

From API assessment to production deployment in four simple steps.

Product Overview

PLATFORM

API 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 WorksAPI 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 / Courses
Courses logo

HubSpot Courses

Browse all Hubspot APIs
✓ Official Vendor SpecCRMContact Managementoauth2, apiKey11 EndpointsREST

For Agents

Read, write, search, and batch-manage HubSpot Courses CRM records via the standard /crm/v3/objects/courses endpoints with custom-property support.

Use for: I need to create a new course record in HubSpot for a learner enrollment, Search for all active course records assigned to a specific owner, List all courses in HubSpot updated in the last 7 days, Retrieve the full property set for a single course by its objectId

Not supported: Does not handle learner authentication, video hosting, or quiz delivery — use for tracking course records inside HubSpot CRM only.

The HubSpot Courses API exposes the Courses CRM object so AI agents can read, create, update, archive, and search course records that sit alongside companies, contacts, and deals. It supports single-record and batch operations through the standard /crm/v3/objects/{objectType} surface, with full support for custom properties and pagination. Courses are commonly used by education, training, and onboarding teams that want learner enrollments tracked inside the same CRM as sales pipeline data.

Jentic One on GithubView OpenAPI Document

Install Jentic One Beta

Connect the Courses to your agent

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

Create individual course records with custom properties via POST /crm/v3/objects/{objectType}

Bulk-import up to 100 courses per request through POST /crm/v3/objects/{objectType}/batch/create

Search course records by property filters with POST /crm/v3/objects/{objectType}/search

Upsert courses by external identifier using POST /crm/v3/objects/{objectType}/batch/upsert

Archive obsolete course records with DELETE /crm/v3/objects/{objectType}/{objectId}

Patch specific course properties via PATCH /crm/v3/objects/{objectType}/{objectId} without touching other fields

Use Cases

Patterns agents use Courses API for, with concrete tasks.

★ LMS to CRM Course Sync

Sync course enrollments from an external learning management system into HubSpot so that sales and customer success teams see a learner's training history alongside deals and tickets. The batch upsert endpoint handles up to 100 courses per call and uses an external identifier to avoid duplicates. A nightly sync of a few thousand records typically completes in minutes.

Bulk-upsert 50 course records into HubSpot via POST /crm/v3/objects/courses/batch/upsert using courseExternalId as the idProperty, then verify the response status is 200.

Course Pipeline Reporting

Pull course records by completion status, owner, or date range to feed weekly training reports. The search endpoint accepts property filters, sorting, and pagination cursors so reporting jobs can stream large result sets without timing out. Pair with the CRM Owners API to resolve owner IDs to user names.

Search HubSpot courses where hs_pipeline_stage equals completed and createdate is within the last 30 days, then return the count and the first page of records.

Course Lifecycle Cleanup

Archive courses that have been retired so they no longer appear in active reports or workflows, while preserving historical data for audits. The single-record archive endpoint marks the record as archived rather than hard-deleting it, and a separate batch archive endpoint handles cleanup at scale.

Archive 25 retired course records using POST /crm/v3/objects/courses/batch/archive with the list of objectIds, then confirm a 204 response.

Agent-Driven Course Updates via Jentic

An AI agent monitoring training events updates the corresponding HubSpot course record when a learner finishes a module. Through Jentic, the agent searches for the right operation, loads the input schema, and executes the PATCH call without parsing HubSpot docs or storing the API key in its context. Integration through Jentic takes under an hour versus 1-2 days for direct OAuth wiring.

Use Jentic to search 'update a HubSpot course record', load the PATCH /crm/v3/objects/courses/{objectId} schema, and execute it with a new completion timestamp.

Key Endpoints

11 endpoints — the hubspot courses api exposes the courses crm object so ai agents can read, create, update, archive, and search course records that sit alongside companies, contacts, and deals.

METHOD

PATH

DESCRIPTION

GET

/crm/v3/objects/{objectType}

List course records with pagination

POST

/crm/v3/objects/{objectType}

Create a course record

GET

/crm/v3/objects/{objectType}/{objectId}

Retrieve a course by ID

PATCH

/crm/v3/objects/{objectType}/{objectId}

Update properties on a course

POST

/crm/v3/objects/{objectType}/batch/create

Batch-create up to 100 courses

POST

/crm/v3/objects/{objectType}/batch/upsert

Batch-upsert courses by external ID

POST

/crm/v3/objects/{objectType}/search

Search courses by property filters

GET

/crm/v3/objects/{objectType}

List course records with pagination

POST

/crm/v3/objects/{objectType}

Create a course record

GET

/crm/v3/objects/{objectType}/{objectId}

Retrieve a course by ID

PATCH

/crm/v3/objects/{objectType}/{objectId}

Update properties on a course

POST

/crm/v3/objects/{objectType}/batch/create

Batch-create up to 100 courses

POST

/crm/v3/objects/{objectType}/batch/upsert

Batch-upsert courses by external ID

POST

/crm/v3/objects/{objectType}/search

Search courses by property filters

Why Jentic?

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

Credential management

Credential isolation

HubSpot OAuth tokens or private app API keys are stored encrypted in the Jentic vault. Agents receive a scoped execution token — the raw HubSpot credential is injected at call time and never enters the agent's context.

Intent-based discovery

Intent-based discovery

Agents search Jentic by intent (e.g., 'create a HubSpot course record') and Jentic returns the matching /crm/v3/objects/courses operation with its input schema, so the agent can call the right endpoint without browsing HubSpot's developer docs.

Time to first call

Time to first call

Direct HubSpot integration: 1-2 days for OAuth setup, scope management, and error handling. Through Jentic: under 1 hour — search, load schema, execute.

Related APIs

Alternatives and complements available in the Jentic catalogue.

Complementary

HubSpot Contacts

→

Manage the contacts that are typically associated with course enrollments

Use Contacts when the agent needs to attach a learner profile to a course record or look up a contact before creating an enrollment.

Complementary

HubSpot Deals

→

Track sales opportunities tied to training or course purchases

Use Deals alongside Courses when course enrollments are tied to a paid training contract that needs pipeline tracking.

Complementary

HubSpot CRM Properties

→

Define custom properties on the courses object type

Call Properties first to discover or create the custom fields a course record will use before reading or writing course data.

Alternative

Salesforce

→

Salesforce custom objects offer the same CRM-record pattern in a different ecosystem

Choose Salesforce when the organisation already standardises on Sales Cloud or needs Apex-based custom logic on course records.

FAQs

Specific to using Courses API through Jentic.

What authentication does the HubSpot Courses API use?

The Courses API accepts OAuth 2.0 access tokens or HubSpot private app API keys passed in the private-app or private-app-legacy header. Through Jentic, credentials are stored in the MAXsystem vault and injected at execution time so the raw OAuth token or API key never enters the agent's context.

Can I bulk-import course records with the HubSpot Courses API?

Yes. POST /crm/v3/objects/courses/batch/create accepts up to 100 records per request, and POST /crm/v3/objects/courses/batch/upsert lets you insert-or-update by an external identifier in the same call. Use these endpoints instead of looping single creates to stay within rate limits.

What are the rate limits for the HubSpot Courses API?

HubSpot enforces account-level limits — typically 100 requests per 10 seconds for OAuth apps and 190 per 10 seconds for private apps on paid tiers, plus a daily cap. Batch endpoints count as a single request, so prefer batch/create and batch/upsert for high-volume jobs.

How do I search HubSpot courses through Jentic?

Run jentic.search('search HubSpot course records'), load the schema for POST /crm/v3/objects/courses/search, then execute it with a filterGroups payload (for example, hs_pipeline_stage equals completed). Jentic returns results as structured JSON ready for the next step in your workflow.

Can the Courses API associate a course with a contact or deal?

The Courses API itself only manages the course record. To link a course to a contact, deal, or company, use the CRM Associations API in HubSpot — Jentic exposes that as a separate operation you can chain after creating the course.

Does the HubSpot Courses API support custom properties?

Yes. Course records support any custom property defined on the courses object type. Pass property names in the properties array on read calls to control what comes back, and include them in the properties map on create or update.

GET STARTED

Start building with Courses API

Explore with Jentic
View OpenAPI Document