NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #833 most downloaded on Packagist
Hubspot API client
Last release 4 months ago
12 May 2026
Release timing varies
gaps range from 9 days to 6 months
Most releases are documented
notes for 51 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
79 releases · first in 2020
One column per quarter.
conversations()->visitorIdentification() API client
conversations()->visitorIdentification() API clientevents() API clientfix createToken method in marketing()->transactional() API clients
marketing()->transactional() API clientscrm()->extensions()->accounting() API client
crm()->extensions()->accounting() API clientcrm()->extensions()->calling() API clientcrm()->extensions()->videoconferencing API clientcrm()->objects()->feedbackSubmissions() API clientmarketing()->transactional() API clientfix batch methods in cms()->blogs() API clients
cms()->blogs() API clientsautomation()->actions() API client
automation()->actions() API client### Added - Standard Errors
cms()->blogs()->authors() API client
cms()->blogs()->authors() API clientcms()->blogs()->blogPosts() API clientcms()->blogs()->tags() API clientcms()->hubdb() API clientUpdate Guzzle version (^6.2 | ^7.0)
crm()->timeline()->tokensApi and crm()->timeline()->templatesApi remove OAuth token
cms()->hubdb() API clientcms()->schemas() change urlscrm()->timeline()->tokensApi and crm()->timeline()->templatesApi remove OAuth token### Added - cms()->objects() API client - cms()->schemas() API client
cms()->objects() API clientcms()->schemas() API clientswap method's params in batch read methods
Nothing published for this version
### Fixed - Fixed HubSpot/Configs
Parsing response in cms()->siteSearch()->defaultApi()->getById() method
cms()->performance() API client
cms()->auditLogs() API clientcms()->domains() API clientcms()->performance() API clientcms()->siteSearch() API clientcms()->urlRedirects() API clientUpdate Webhook's Util (HubSpot\Utils\Webhooks::isHubspotSignatureValid)
Batch update for Webhook's Subscriptions (webhooks()->subscriptionsApi()->updateBatch($appId, $updateRequest))
archiveBatch => archive (crm()->associations()->batchApi())
Moved methods archive, callClone, create, getById, pushLive, resetDraft, schedule, update and updateDraft from cms()->blogs()->blogPostsApi() to cms()
archive, callClone, create, getById, pushLive, resetDraft, schedule, update and updateDraft from cms()->blogs()->blogPostsApi() to cms()->blogs()->basicApi().archiveBatch => archive, createBatch => create, readBatch => read and updateBatch => update from cms()->blogs()->blogPostsApi() to cms()->blogs()->batchApi().attachToLangGroup, createLangVariation, detachFromLangGroup, setLangPrimary and updateLangs from cms()->blogs()->blogPostsApi() to cms()->blogs()->multiLanguageApi().cms()->perfomance() API client.crm()->associations()->v4()->schema()->definitionConfigurationsApi() API.crm()->associations()->v4()->schema()->definitionsApi()->archive() to crm()->associations()->v4()->schema()->definitionsApi()->remove().crm()->extensions()->calling()->channelConnectionSettingsApi() API.uses_remote and uses_calling_window to HubSpot\Client\Crm\Extensions\Calling\Model\SettingsPatchRequest, HubSpot\Client\Crm\Extensions\Calling\Model\SettingsRequest and HubSpot\Client\Crm\Extensions\Calling\Model\SettingsResponse.include_error_message and include_row_data to crm()->imports()->publicImportsApi()->getErrors().contains_encrypted_properties to HubSpot\Client\Crm\Imports\Model\ImportRowCore.invalid_property_value, error_message and invalid_value_to_display to HubSpot\Client\Crm\Imports\Model\PublicImportError.mapped_object_type_ids to HubSpot\Client\Crm\Imports\Model\PublicImportResponse.merge() from crm()->companies()->mergeApi() to crm()->companies()->basicApi().crm()->companies()->mergeApi() API.batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Companies\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Companies\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->companies()->batchApi()->create().association_category and association_type_id properties required in HubSpot\Client\Crm\Companies\Model\AssociationSpec, HubSpot\Client\Crm\Contacts\Model\AssociationSpec, HubSpot\Client\Crm\Deals\Model\AssociationSpec.types and to properties required in HubSpot\Client\Crm\Companies\Model\PublicAssociationsForObject, HubSpot\Client\Crm\Contacts\Model\PublicAssociationsForObject, HubSpot\Client\Crm\Deals\Model\PublicAssociationsForObject.id property required in HubSpot\Client\Crm\Companies\Model\PublicObjectId, HubSpot\Client\Crm\Contacts\Model\PublicObjectId, HubSpot\Client\Crm\Deals\Model\PublicObjectId.object_write_trace_id to HubSpot\Client\Crm\Companies\Model\SimplePublicObject, HubSpot\Client\Crm\Companies\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Companies\Model\SimplePublicUpsertObject, HubSpot\Client\Crm\Contacts\Model\SimplePublicObject, HubSpot\Client\Crm\Contacts\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Contacts\Model\SimplePublicUpsertObject,HubSpot\Client\Crm\Deals\Model\SimplePublicObject, HubSpot\Client\Crm\Deals\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Deals\Model\SimplePublicUpsertObject, HubSpot\Client\Crm\LineItems\Model\SimplePublicObject, HubSpot\Client\Crm\LineItems\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\LineItems\Model\SimplePublicUpsertObject, HubSpot\Client\Crm\Quotes\Model\SimplePublicObject, HubSpot\Client\Crm\Quotes\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Quotes\Model\SimplePublicUpsertObject, HubSpot\Client\Crm\Objects\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\Model\SimplePublicUpsertObject, HubSpot\Client\Crm\Objects\Calls\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Calls\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\Calls\Model\SimplePublicUpsertObject, HubSpot\Client\Crm\Objects\Communications\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Communications\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\Communications\Model\SimplePublicUpsertObject, HubSpot\Client\Crm\Objects\Emails\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Emails\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\Emails\Model\SimplePublicUpsertObject,
HubSpot\Client\Crm\Objects\FeedbackSubmissions\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\FeedbackSubmissions\Model\SimplePublicObjectWithAssociations,
HubSpot\Client\Crm\Objects\Leads\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Leads\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\Leads\Model\SimplePublicUpsertObject,
HubSpot\Client\Crm\Objects\Goals\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Goals\Model\SimplePublicObjectWithAssociations,
HubSpot\Client\Crm\Objects\Meetings\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Meetings\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\Meetings\Model\SimplePublicUpsertObject,
HubSpot\Client\Crm\Objects\Notes\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Notes\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\Notes\Model\SimplePublicUpsertObject,
HubSpot\Client\Crm\Objects\PostalMail\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\PostalMail\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\PostalMail\Model\SimplePublicUpsertObject,
HubSpot\Client\Crm\Objects\Tasks\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Tasks\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\Tasks\Model\SimplePublicUpsertObject,
HubSpot\Client\Crm\Objects\Taxes\Model\SimplePublicObject, HubSpot\Client\Crm\Objects\Taxes\Model\SimplePublicObjectWithAssociations, HubSpot\Client\Crm\Objects\Taxes\Model\SimplePublicUpsertObject,
HubSpot\Client\Crm\Products\Model\SimplePublicObject, HubSpot\Client\Crm\Products\Model\SimplePublicObjectWithAssociations and HubSpot\Client\Crm\Products\Model\SimplePublicUpsertObject.object_write_trace_id from HubSpot\Client\Crm\Companies\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Companies\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Contacts\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Contacts\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Deals\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Deals\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\LineItems\Model\SimplePublicObjectInput, HubSpot\Client\Crm\LineItems\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Quotes\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Quotes\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\Calls\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\Calls\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\Communications\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\Communications\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\Emails\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\Emails\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\Leads\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\Leads\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\Meetings\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\Meetings\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\Notes\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\Notes\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\PostalMail\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\PostalMail\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\Tasks\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\Tasks\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Objects\Taxes\Model\SimplePublicObjectInput, HubSpot\Client\Crm\Objects\Taxes\Model\SimplePublicObjectInputForCreate, HubSpot\Client\Crm\Products\Model\SimplePublicObjectInput and HubSpot\Client\Crm\Products\Model\SimplePublicObjectInputForCreate.merge() from crm()->contacts()->mergeApi() to crm()->contacts()->basicApi().crm()->contacts()->mergeApi() API.purge() from crm()->contacts()->GDPRApi() to crm()->contacts()->basicApi().crm()->contacts()->GDPRApi() API.batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Contacts\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Contacts\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->contacts()->batchApi()->create().merge() from crm()->deals()->mergeApi() to crm()->deals()->basicApi().crm()->deals()->mergeApi() API.batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Deals\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Deals\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->deals()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\LineItems\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\LineItems\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->lineItems()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Quotes\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Quotes\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->quotes()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Objects\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Objects\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->objects()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Objects\Calls\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Objects\Calls\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->objects()->calls()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Objects\Emails\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Objects\Emails\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->objects()->emails()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Objects\Leads\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Objects\Leads\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->objects()->leads()->batchApi()->create().archive(), create() and update() to crm()->objects()->goals()->basicApi().archive(), create(), upsert() and update() to crm()->objects()->goals()->batchApi().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Objects\Meetings\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Objects\Meetings\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->objects()->meetings()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Objects\Notes\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Objects\Notes\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->objects()->notes()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Objects\PostalMail\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Objects\PostalMail\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->objects()->postalMail()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Objects\Tasks\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Objects\Tasks\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->objects()->tasks()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Objects\Taxes\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Objects\Taxes\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->objects()->taxes()->batchApi()->create().batch_input_simple_public_object_input_for_create: HubSpot\Client\Crm\Products\Model\BatchInputSimplePublicObjectInputForCreate to batch_input_simple_public_object_batch_input_for_create: HubSpot\Client\Crm\Products\Model\BatchInputSimplePublicObjectBatchInputForCreate in crm()->products()->batchApi()->create().events()->send()->customEventDataApi() to events()->send()->basicApi().events()->send()->batchApi() API.marketing()->events()->attendanceSubscriberStateChangesApi() to marketing()->events()->addEventAttendeesApi().recordByContactId() and recordByEmail() to marketing()->events()->addEventAttendeesApi().marketing()->events()->batchApi() API.batchArchive => archive and batchUpsert => create from marketing()->events()->basicApi() to marketing()->events()->batchApi().archiveByObjectId(), getAll(), getByObjectId() and updateByObjectId() to marketing()->events()->basicApi().cancel and complete from marketing()->events()->basicApi() to marketing()->events()->changePropertyApi().marketing()->events()->identifiersApi() API.doSearch() from marketing()->events()->basicApi() to marketing()->events()->identifiersApi().marketing()->events()->participantStateApi() to marketing()->events()->retrieveParticipantStateApi().\HubSpot\Client\Marketing\Events\Model\CollectionResponseMarketingEventExternalUniqueIdentifierNoPaging|\HubSpot\Client\Marketing\Events\Model\Error to \HubSpot\Client\Marketing\Events\Model\CollectionResponseSearchPublicResponseWrapperNoPaging|\HubSpot\Client\Marketing\Events\Model\Error for marketing()->events()->identifiersApi()->doSearch().object_id to HubSpot\Client\Marketing\Events\Model\MarketingEventDefaultResponse, HubSpot\Client\Marketing\Events\Model\MarketingEventPublicDefaultResponse and HubSpot\Client\Marketing\Events\Model\MarketingEventPublicReadResponse.files()->filesApi()->doSearch().archiveGDPR() to delete() in files.filesApi.updateProperties() to updatePropertiesRecursively() in files.foldersApi.updateProperties() to files.foldersApi.files()->foldersApi()->doSearch().source_group and file_md5 to HubSpot\Client\Files\Model\File.clear_expires to HubSpot\Client\Files\Model\FileUpdateInput.expires_at:int to expires_at:\DateTime in HubSpot\Client\Files\Model\FileUpdateInput.expires_at to HubSpot\Client\Files\Model\ImportFromUrlInput.id from HubSpot\Client\Files\Model\FolderUpdateInput.Your coding agent can read these notes before it upgrades. Set up the MCP server →