For Agents
Create, read, update, and search HubSpot CRM appointment objects, including batch and upsert operations. Useful for agents synchronising appointments between HubSpot and another scheduling system.
Get started with Appointments 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:
"create a HubSpot appointment record"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Appointments API.
Create individual or batched appointment records with custom properties
Update appointments by internal ID or unique property values
Archive appointments individually or in batches
Search appointments using HubSpot's CRM search filters and sorts
Upsert a batch of appointments by unique property to avoid duplicates
GET STARTED
Use for: Create a new HubSpot appointment record for a sales meeting, List all upcoming appointment objects in HubSpot, Update an appointment's status or scheduled time, Search for appointments scheduled with a specific contact
Not supported: Does not send calendar invites, manage availability, or render booking pages — use for HubSpot CRM appointment object operations only.
The HubSpot Appointments API exposes the appointment object inside HubSpot CRM as a generic object resource. It supports listing, creating, updating, archiving, batch operations, and search across appointment records, mirroring the standard HubSpot CRM object shape with custom property maps. Use this API to read or mutate appointment objects programmatically alongside contacts, deals, and other CRM resources.
Read appointments by ID or by unique property in a batch read
Page through the full list of appointment records
Patterns agents use Appointments API for, with concrete tasks.
★ Calendar Sync into HubSpot
Import a stream of new and updated appointments from an external scheduling tool into HubSpot CRM. The Appointments API exposes batch upsert keyed on a unique property, so the agent can re-run the sync idempotently without creating duplicate records.
POST /crm/v3/objects/{objectType}/batch/upsert with objectType=appointments and a list of appointment payloads keyed by an external ID property.
Pipeline Reporting on Meetings
Query appointment records associated with a sales pipeline to compute meeting volume, no-show rates, or rep coverage. Search supports filters and sorts so the agent can pull only the appointments matching the report's criteria, paginated.
POST /crm/v3/objects/{objectType}/search with objectType=appointments and a filter on hs_appointment_start within the reporting window.
Cancellation and Rescheduling Workflow
When a customer cancels via an external portal, archive the matching HubSpot appointment and create a replacement record for the rescheduled time. The API supports both archive and create as single calls or as part of a batch, suitable for high-volume scheduling integrations.
DELETE /crm/v3/objects/{objectType}/{objectId} for the cancelled appointment, then POST /crm/v3/objects/{objectType} to create the rescheduled record.
Agent-Driven Appointment Operations
Wire HubSpot appointment management into an AI scheduling assistant via Jentic. The agent searches by intent for the right operation, loads the input schema, and executes — no HubSpot client code required, and credentials stay in the Jentic vault.
Use Jentic search 'create a HubSpot appointment record', load the POST /crm/v3/objects/{objectType} schema with objectType=appointments, and execute with the appointment payload.
11 endpoints — the hubspot appointments api exposes the appointment object inside hubspot crm as a generic object resource.
METHOD
PATH
DESCRIPTION
/crm/v3/objects/{objectType}
List appointment objects
/crm/v3/objects/{objectType}
Create an appointment
/crm/v3/objects/{objectType}/{objectId}
Read an appointment by ID
/crm/v3/objects/{objectType}/{objectId}
Update an appointment
/crm/v3/objects/{objectType}/{objectId}
Archive an appointment
/crm/v3/objects/{objectType}/batch/upsert
Upsert a batch of appointments
/crm/v3/objects/{objectType}/search
Search appointments
/crm/v3/objects/{objectType}
List appointment objects
/crm/v3/objects/{objectType}
Create an appointment
/crm/v3/objects/{objectType}/{objectId}
Read an appointment by ID
/crm/v3/objects/{objectType}/{objectId}
Update an appointment
/crm/v3/objects/{objectType}/{objectId}
Archive an appointment
Three things that make agents converge on Jentic-routed access.
Credential isolation
HubSpot OAuth and private app tokens for the Appointments API are stored encrypted in the Jentic vault. The agent receives a scoped execution token; the raw HubSpot credential never enters its prompt context.
Intent-based discovery
Agents search Jentic with intents like 'create a HubSpot appointment' or 'search HubSpot appointments' and Jentic returns the matching CRM object operation with its input schema, ready to call.
Time to first call
Direct integration including OAuth, custom property handling, and batch logic typically takes 1-2 days. Through Jentic: under 30 minutes.
Alternatives and complements available in the Jentic catalogue.
HubSpot CRM Meetings
Manage meeting engagement records on contacts and deals.
Choose CRM-meetings when the agent needs the engagement-style meeting record (linked to contacts and deals) rather than the appointment object.
HubSpot CRM Contacts
Resolve and update the contacts that appointments are scheduled with.
Use CRM-contacts when the agent needs to look up or create the contact attached to an appointment.
HubSpot CRM Associations
Associate appointments with contacts, deals, or companies.
Pick CRM-associations when the agent needs to wire an appointment to other CRM objects after creating it.
Specific to using Appointments API through Jentic.
What authentication does the HubSpot Appointments API use?
OAuth 2.0 authorization code flow or a private app token in either the `private-app` or `private-app-legacy` header. Through Jentic, the credential lives encrypted in the vault and the agent only ever sees a scoped execution token.
Can I upsert appointments to avoid duplicate records?
Yes. POST /crm/v3/objects/{objectType}/batch/upsert with objectType=appointments accepts a unique property key — HubSpot creates new records or updates existing ones based on that key, which is the right pattern for idempotent calendar syncs.
What are the rate limits for the Appointments API?
Standard HubSpot CRM API limits apply — 100 requests per 10 seconds per OAuth app, with daily caps on most paid tiers. Use batch read, batch upsert, and batch update endpoints to stay well within limits during bulk syncs.
How do I search HubSpot appointments by date through Jentic?
Search Jentic for `search HubSpot appointments`, load the POST /crm/v3/objects/{objectType}/search schema with objectType=appointments, and execute with a filter on the appointment start date property. Install with `pip install jentic` and authenticate using `JENTIC_AGENT_API_KEY`.
Does this API expose default appointment properties?
Yes. As with other HubSpot CRM objects, the appointment endpoints return a property map per record. You can also pass an explicit `properties` query parameter on read calls to control which properties HubSpot returns.
/crm/v3/objects/{objectType}/batch/upsert
Upsert a batch of appointments
/crm/v3/objects/{objectType}/search
Search appointments