Skip to main content
GET
Twitter engagement rate API for X profiles
1 credit per report, whatever it reads · A user X doesn’t know is free · All plans from $0.00012/credit · Supports guest paid reads

A profile’s engagement at a glance

Use GET /x/users/{id}/insights to size up an account before you work with it. Name the user by user ID, username, or profile URL. The report reads the profile’s counts and its last 20 posts. Reposts and the pinned post stay out of the averages, so they describe the account’s own recent posts. Engagements are likes, replies, reposts, and quotes. A rate is null when nothing divides it, such as a profile without posts of its own. A protected account’s posts are private. Its report has its counts and account age, postsPrivate: true, and a message that says so, at the same 1 credit.

Path parameters

string
required
User ID, username with or without @, or URL-encoded profile URL, such as x.com/nasa. See path IDs.

Headers

string
Full account key. Sessions and OAuth also work.
string
Bearer xq_your_guest_key_here for paid_reads.

Response

200 OK

object
string
ID of the profile.
string
Username of the profile.
number
Followers.
number
Accounts the user follows.
number
Posts the user has made.
number | null
Whole days since the account joined X.
boolean
true when only the account’s followers see its posts. The report then has its counts only.
object
The posts the averages read: posts, and when the oldestAt and newestAt of them went up.
object | null
Likes, replies, reposts, quotes, bookmarks, views, and engagements per post. null without posts.
number | null
Average engagements per post, as a percent of followers.
number | null
Engagements as a percent of views across the sample.
number | null
Sampled posts per day, from the oldest one until now.
string | null
The sampled post with the most engagements.
string
Says why the report has counts only, for a protected account.

400 Invalid input

Send a user ID, a username, or a profile URL.

404 User not found

A user X doesn’t know is free.

401 Unauthenticated

Anonymous requests get WWW-Authenticate: Bearer and a guest wallet checkout action. This is not a Payment challenge.

402 Payment required

Account keys get account options. Guest keys get guest top-up only. No checkout starts automatically. Confirm any payment action.

502 X API unavailable

The read service returned an error. Retry after a short delay.