Events
New Post Event
The event sent whenever there's a new post from a monitored account
{
"event_id": "string", // unique ID for the event
"event": "twitter.post.new" | "truth_social.post.new",
"task_info": {
"id": "integer", // task ID
"group": "string", // task group
"handle": "string", // monitored user handle
"profile_info": UserInfoObject // monitored user profile info
},
"data": PostDataObject // the new post data
}
PostDataObject
{
"id": "string", // ID of the post
"created_at": "integer", // timestamp of the post (millisecond)
"type": "post" | "repost" | "quote" | "reply", // what the post is
"text": "string", // text of the post
"media": [ MediaOject ], // images/videos in the post
"mentions": [ MentionOject ], // mentions in the post
"tags": [ "string" ], // tags in the post
"author": UserInfoObject,
"quoted?": PostDataObject,
"reposted?": PostDataObject,
"replied?": PostDataObject,
}
MediaOject
{
"type": "photo" | "video", // type of the media
"url": "string", // url to the photo or video
"preview?": "string", // if it's a video, the url to the first frame of the video
"duration?": "integer" // if it's a video, the duration of it in milliseconds
}
MentionOject
{
"id": "string", // ID of the mentioned profile
"handle": "string", // handle of the mentioned profile
"name": "string", // display name of the mentioned profile
}
UserInfoObject
{
"id": "string", // ID of the user
"created_at": "integer", // timestamp of the profile (millisecond)
"handle": "string", // handle of the profile
"name": "string", // display name of the profile
"avatar": "string", // url to the PFP of the profile
"banner": "string", // url to the banner of the profile
"description": "string", // bio of the profile
"location": "string", // location set on the profile
"website": "string", // url set on the profile
"verification": {
"is_verified": "boolean", // does the profile have a blue tick
"type?": "string", // what type of verification does it have
},
"stats": {
"followers": "integer", // followers of the profile
"following": "integer", // following of the profile
"posts": "integer", // posts of the profile
"media": "integer", // posted media from the profile
"likes": "integer", // like posts of the profile
}
}
New Following Event
The event sent whenever the monitored account follows someone
{
"event_id": "string", // unique ID for the event
"event": "twitter.following.new",
"task_info": {
"id": "integer", // task ID
"group": "string", // task group
"handle": "string", // monitored user handle
"profile_info": UserInfoObject // monitored user profile info
},
"data": UserInfoObject // profile info of the newly followed
}
UserInfoObject
{
"id": "string", // ID of the user
"created_at": "integer", // timestamp of the profile (millisecond)
"handle": "string", // handle of the profile
"name": "string", // display name of the profile
"avatar": "string", // url to the PFP of the profile
"banner": "string", // url to the banner of the profile
"description": "string", // bio of the profile
"location": "string", // location set on the profile
"website": "string", // url set on the profile
"verification": {
"is_verified": "boolean", // does the profile have a blue tick
"type?": "string", // what type of verification does it have
},
"stats": {
"followers": "integer", // followers of the profile
"following": "integer", // following of the profile
"posts": "integer", // posts of the profile
"media": "integer", // posted media from the profile
"likes": "integer", // like posts of the profile
}
}
Profile Update Event
The event sent whenever the monitored account updates its profile
{
"event_id": "string", // unique ID for the event
"event": "twitter.profile.update",
"task_info": {
"id": "integer", // task ID
"group": "string", // task group
"handle": "string", // monitored user handle
"profile_info": UserInfoObject // monitored user profile info
},
"data": {
"handle?": UserChangeObject,
"name?": UserChangeObject,
"avatar?": UserChangeObject,
"banner?": UserChangeObject,
"location?": UserChangeObject,
"description?": UserChangeObject,
"website?": UserChangeObject,
"pinned_post?": UserChangeObject
}
}
UserInfoObject
{
"id": "string", // ID of the user
"created_at": "integer", // timestamp of the profile (millisecond)
"handle": "string", // handle of the profile
"name": "string", // display name of the profile
"avatar": "string", // url to the PFP of the profile
"banner": "string", // url to the banner of the profile
"description": "string", // bio of the profile
"location": "string", // location set on the profile
"website": "string", // url set on the profile
"verification": {
"is_verified": "boolean", // does the profile have a blue tick
"type?": "string", // what type of verification does it have
},
"stats": {
"followers": "integer", // followers of the profile
"following": "integer", // following of the profile
"posts": "integer", // posts of the profile
"media": "integer", // posted media from the profile
"likes": "integer", // like posts of the profile
}
}
UserChangeObject
{
"prev": "string", // previous value
"updated": "string", // new value
"post?": PostDataObject, // if the change is for the pinned post, the new pinned post will be included
}
OCR Result Event
The event sent when the OCR in a posted image is ready (when enabled)
{
"event_id": "string", // unique ID for the event
"event": "twitter.post.ocr" | "truth_social.post.ocr",
"task_info": {
"id": "integer", // task ID
"group": "string", // task group
"handle": "string", // monitored user handle
"profile_info": UserInfoObject // monitored user profile info
},
"data": {
"text": "string", // text detected in the image
"image_url": "string", // url of the analyzed image
"post_id": "string" // ID of the post the image comes from
}
}
UserInfoObject
{
"id": "string", // ID of the user
"created_at": "integer", // timestamp of the profile (millisecond)
"handle": "string", // handle of the profile
"name": "string", // display name of the profile
"avatar": "string", // url to the PFP of the profile
"banner": "string", // url to the banner of the profile
"description": "string", // bio of the profile
"location": "string", // location set on the profile
"website": "string", // url set on the profile
"verification": {
"is_verified": "boolean", // does the profile have a blue tick
"type?": "string", // what type of verification does it have
},
"stats": {
"followers": "integer", // followers of the profile
"following": "integer", // following of the profile
"posts": "integer", // posts of the profile
"media": "integer", // posted media from the profile
"likes": "integer", // like posts of the profile
}
}
Post Translation Event
The event sent when the translation of a post is ready (when enabled)
{
"event_id": "string", // unique ID for the event
"event": "twitter.post.translate" | "truth_social.post.translate",
"task_info": {
"id": "integer", // task ID
"group": "string", // task group
"handle": "string", // monitored user handle
"profile_info": UserInfoObject // monitored user profile info
},
"data": {
"post_id": "string", // ID of the post the texts come from
"text": [
"string", // translated text of the post
"string" // translation of subtweets (if present and required)
]
}
}
UserInfoObject
{
"id": "string", // ID of the user
"created_at": "integer", // timestamp of the profile (millisecond)
"handle": "string", // handle of the profile
"name": "string", // display name of the profile
"avatar": "string", // url to the PFP of the profile
"banner": "string", // url to the banner of the profile
"description": "string", // bio of the profile
"location": "string", // location set on the profile
"website": "string", // url set on the profile
"verification": {
"is_verified": "boolean", // does the profile have a blue tick
"type?": "string", // what type of verification does it have
},
"stats": {
"followers": "integer", // followers of the profile
"following": "integer", // following of the profile
"posts": "integer", // posts of the profile
"media": "integer", // posted media from the profile
"likes": "integer", // like posts of the profile
}
}
Task Status Event
The event sent if the monitored profile becomes unavailable or available again
{
"event_id": "string", // unique ID for the event
"event": "twitter.task.update",
"task_info": {
"id": "integer", // task ID
"group": "string", // task group
"handle": "string", // monitored user handle
"profile_info": UserInfoObject // monitored user profile info
},
"status": "profile_private" | "profile_suspended" | "profile_available_back"
}
UserInfoObject
{
"id": "string", // ID of the user
"created_at": "integer", // timestamp of the profile (millisecond)
"handle": "string", // handle of the profile
"name": "string", // display name of the profile
"avatar": "string", // url to the PFP of the profile
"banner": "string", // url to the banner of the profile
"description": "string", // bio of the profile
"location": "string", // location set on the profile
"website": "string", // url set on the profile
"verification": {
"is_verified": "boolean", // does the profile have a blue tick
"type?": "string", // what type of verification does it have
},
"stats": {
"followers": "integer", // followers of the profile
"following": "integer", // following of the profile
"posts": "integer", // posts of the profile
"media": "integer", // posted media from the profile
"likes": "integer", // like posts of the profile
}
}
New Post Global Monitor Event
The event sent whenever there's a new post matching a monitored keyword
{
"event": "twitter_keyword.post.new",
"task_info": {
"id": "integer", // task ID
"group": "string", // task group
"keyword": "string", // monitored keyword
},
"data": KeywordPostDataObject // the new post data
}
KeywordPostDataObject
{
"id": "string", // ID of the post
"created_at": "integer", // timestamp of the post (millisecond)
"text": "string", // text of the post
"media": [ MediaOject ], // images/videos in the post
"tags": [ "string" ], // tags in the post
"author": {
"id": "string", // ID of the post's author
"created_at": "integer", // timestamp of the post's author
"handle": "string", // handle of the post's author
"name": "string", // name of the post's author
"avatar": "string", // url to the PFP of the post's author
"verification": {
"is_verified": "bool" // does the post's author have a blue tick
}
}
}
Last updated