Engagement Webhooks

Track likes, bookmarks, retweets, and quotes on your posts.

Engagement events fire when likes, bookmarks, retweets, or quotes change through the API. Every delivery uses the shared envelope described in Webhooks.

Events

EventWhen
engagement.liked / engagement.unlikedLike added or removed
engagement.bookmarked / engagement.unbookmarkedBookmark added or removed
engagement.retweeted / engagement.unretweetedRetweet/repost added or removed
engagement.quotedQuote post created. Also emits post.platform.published for the new quote

Payloads

Like and bookmark events share this shape (active tells you whether the action was applied or undone):

{
  "postId": "POST_ID",
  "destinationId": "DEST_ID",
  "accountId": "ACCOUNT_ID",
  "platform": "x",
  "externalPostId": "2077337724349026673",
  "active": true
}

Retweet events add the repost id (engagement.unretweeted omits retweetId):

{
  "postId": "POST_ID",
  "destinationId": "DEST_ID",
  "accountId": "ACCOUNT_ID",
  "platform": "threads",
  "externalPostId": "threads_post_123",
  "retweetId": "repost_456"
}

engagement.quoted points at both the source and the new quote post:

{
  "sourcePostId": "SOURCE_POST_ID",
  "sourceDestinationId": "SOURCE_DEST_ID",
  "quotePostId": "QUOTE_POST_ID",
  "quoteDestinationId": "QUOTE_DEST_ID",
  "accountId": "ACCOUNT_ID",
  "platform": "x",
  "externalPostId": "2088445566778899001",
  "externalUrl": "https://x.com/i/web/status/2088445566778899001",
  "text": "Adding context to this"
}

On this page