There's a new version of the HubSpot API

We're also working on a new documentation website, you're invited to check it out and give us your feedback.

Get a log of changes for tickets

Last updated May 31, 2023

GET /crm-objects/v1/change-log/tickets

Method Details

HTTP Methods:


Response Format:


Requires Authentication?


Rate Limited?





Service Hub

Required Scope:


Get a list of changes to ticket objects. Returns 1000 (or fewer) changes, starting with the least recent change. Returned changes are limited to the last 24 hours. Changes prior to that period will not be returned.

This endpoint is designed to be polled periodically, allowing your integration to keep track of which objects have been updated so that you can get the details of those updated objects.

After each request, the timestampchangeType, and objectId of the most recently changed record (which will be the last record in the returned list of changes) should be stored by your integration, as you can use those values to get changes that occurred later, allowing you to pull only changes that occurred after your last polling request. All three values must be stored, as the combination of those values is what your integration needs to use to get changes that occurred after your last polling attempt. See the example for more details.

Note The newAssociations and the removedAssociations arrays will always be empty. This endpoint uses a standard response type which includes these arrays, but it doesn't actually populate them.

Required Parameters How to use Description
OAuth access token or private app access token Authorization: Bearer {token} header Used to authenticate the request. Please see this page for more details about authentication.

Optional Parameters How to use Description
Timestamp timestamp=
Used in the request URL
The timestamp of the last change you pulled.
Note: The timestamp parameter can be used by itself, but the results will be inclusive, meaning you may see changes that you saw in a previous request if there was a change at the provided timestamp. You should only use the timestamp by itself if you haven't polled for changes before and don't need changes previous to the timestamp you're including (for example, after syncing all existing tickets).
Change Type changeType=
Used in the request URL
The last changeType you pulled.
Object ID objectId=
Used in the request URL
The ID of the last object you received changes for.