Skip to main content
GET
/
comments
/
v3
/
comments
List comments
curl --request GET \
  --url https://api.hubapi.com/comments/v3/comments
{
  "objects": [
    {
      "id": 409695529,
      "portalId": 62515,
      "contentId": 6860971618,
      "contentTitle": "Test Blog",
      "contentPermalink": "http://demo-hubapi.hs-sites.com/tb-es/test-blog",
      "collectionId": 6513512292,
      "createdAt": 1550182973778,
      "deletedAt": 0,
      "userName": "test testerson",
      "firstName": "test testerson",
      "lastName": "",
      "userEmail": "test@gmail.com",
      "comment": "sample test comment",
      "userUrl": "",
      "state": "APPROVED",
      "userIp": null,
      "userReferrer": null,
      "userAgent": null,
      "contentAuthorEmail": "testapi@hubspot.com",
      "contentAuthorName": "Test 2",
      "contentCreatedAt": 1545651277462,
      "threadId": "0001.0000.0000.0000.0000.0000.0000.0000.0000.0000",
      "replyingTo": null,
      "parentId": 0,
      "legacyId": 0,
      "extraContext": null,
      "parent": null
    }
  ],
  "total": 17,
  "limit": 1,
  "offset": 0
}

Query Parameters

limit
integer<int32>

The number of items to return. Defaults to 20.

offset
integer<int32>

The offset set to start returning rows from. Defaults to 0.

portalId
integer<int64>

The portal number associated with your api key/token.

state
enum<string>

Comment state. Options are: APPROVED, SPAM, REJECTED, PENDING_MODERATION.

Available options:
APPROVED,
SPAM,
REJECTED,
PENDING_MODERATION
contentId
integer<int64>

Allows you get comments for a specific blog post. Include contentId={post ID} to only get comments for that post.

reverse
boolean

If you want comments oldest to newest, supply 'reverse=true'.

query
string

Matches arbitrary text within a comment.

Response

A list of blog comments.

objects
object[]
total
integer
limit
integer
offset
integer
Last modified on December 12, 2025