X Works API
Collect works published by a X account or channel.
API Description
X Works API — Collect works published by a X account or channel.
Authenticate with your Pangolinfo API Key to receive structured JSON data.
Request URL
Request Headers
| Parameters | Parameter value | Type | Description |
|---|---|---|---|
| Content-Type | application/json | string | Data format |
| Authorization | Bearer xxx | string | Authorization Token |
Collection takes up to approximately 75 seconds. Set your client timeout to 90 seconds.
Request Parameters
| Parameter | Required | Type | Description |
|---|---|---|---|
| target | Yes | string | Target URL, supported ID or search keyword for this operation. |
| options | No | object | Optional collection settings, described below. |
options Parameters
| Parameter | Required | Type | Description |
|---|---|---|---|
| cursor | No | string | Continuation cursor from the previous response. Pass the value unchanged. |
Only the request parameters listed on this page are used; other fields are ignored. Pass pagination cursors back unchanged, without encoding, decoding or conversion.
Each request collects one page. Continue with the returned cursor.
Response Fields
| Field | Type | Description |
|---|---|---|
| code | integer | Status code; 0 indicates success. |
| message | string | Response message; ok on success. |
| pointCost | number | Points charged for this request. |
| data | object | Collected data, with fields described below. |
| meta | object | Request identifier and duration in milliseconds. |
| billing | object | Charged units, unit price and billing rule version. |
data Fields
| Field | Type | Description |
|---|---|---|
| type | string | Result type. |
| works | object[] | Collected works. |
| pagination | object | Continuation cursor and whether more results are available. |
data.works[] Fields
| Field | Type | Description |
|---|---|---|
| id | string | null | Record identifier. |
| url | string | null | Content URL. |
| content | string | Content text; may be null for records without text. |
| rawText | string | null | Raw text |
| publishedAt | object | null | Publication time. |
| likes | number | null | Like count. |
| commentsCount | number | null | Platform-reported comment total; not the number billed. |
| reposts | number | null | Repost count. |
| quotes | number | null | Quotes |
| bookmarks | number | null | Bookmarks |
| views | number | null | View count. |
| lang | string | null | Subtitle language code, e.g. en. Manual captions take priority. If unavailable, the default track is returned. |
| possiblySensitive | boolean | Possibly sensitive |
| isNoteTweet | boolean | Is note tweet |
| communityNote | any | Community note |
| replyingTo | string | null | Replying to |
| replyingToStatus | string | null | Replying to status |
| source | string | null | Source |
| media | object[] | Media |
| mentions | object[] | Mentions |
| hashtags | string | null[] | Hashtags |
| urls | object[] | Urls |
| repostedBy | object | null | Reposted by |
| quote | object | null | Quote |
| poster | object | Poster |
data.works[].publishedAt Fields
| Field | Type | Description |
|---|---|---|
| text | string | null | Text value. |
| value | number | null | Parsed value. |
data.works[].media[] Fields
| Field | Type | Description |
|---|---|---|
| type | string | null | Result type. |
| id | string | null | Record identifier. |
| url | string | null | Content URL. |
| thumbnailUrl | string | null | Thumbnail url |
| width | number | null | Width |
| height | number | null | Height |
| durationSec | number | null | Duration sec |
| format | string | null | Format |
| variants | object[] | Variants |
data.works[].mentions[] Fields
| Field | Type | Description |
|---|---|---|
| username | string | null | Username |
| id | string | null | Record identifier. |
data.works[].urls[] Fields
| Field | Type | Description |
|---|---|---|
| url | string | null | Content URL. |
| display | string | null | Display |
data.works[].repostedBy Fields
| Field | Type | Description |
|---|---|---|
| nickname | string | null | Author display name. |
| username | string | null | Username |
| avatar | string | null | Avatar URL. |
| profileUrl | string | null | Author profile URL. |
| id | string | null | Record identifier. |
| verified | boolean | Verified |
| verificationType | string | null | Verification type |
| followersCount | number | null | Followers count |
| followingCount | number | null | Following count |
| protected | boolean | Protected |
data.works[].quote Fields
| Field | Type | Description |
|---|---|---|
| id | string | null | Record identifier. |
| url | string | null | Content URL. |
| content | string | Content text; may be null for records without text. |
| rawText | string | null | Raw text |
| publishedAt | object | null | Publication time. |
| likes | number | null | Like count. |
| commentsCount | number | null | Platform-reported comment total; not the number billed. |
| reposts | number | null | Repost count. |
| quotes | number | null | Quotes |
| bookmarks | number | null | Bookmarks |
| views | number | null | View count. |
| lang | string | null | Subtitle language code, e.g. en. Manual captions take priority. If unavailable, the default track is returned. |
| possiblySensitive | boolean | Possibly sensitive |
| isNoteTweet | boolean | Is note tweet |
| communityNote | any | Community note |
| replyingTo | string | null | Replying to |
| replyingToStatus | string | null | Replying to status |
| source | string | null | Source |
| media | object[] | Media |
| mentions | object[] | Mentions |
| hashtags | string | null[] | Hashtags |
| urls | object[] | Urls |
| repostedBy | object | null | Reposted by |
| quote | any | Quote |
| poster | object | Poster |
data.works[].poster Fields
| Field | Type | Description |
|---|---|---|
| nickname | string | null | Author display name. |
| username | string | null | Username |
| avatar | string | null | Avatar URL. |
| profileUrl | string | null | Author profile URL. |
| id | string | null | Record identifier. |
| verified | boolean | Verified |
| verificationType | string | null | Verification type |
| followersCount | number | null | Followers count |
| followingCount | number | null | Following count |
| protected | boolean | Protected |
data.pagination Fields
| Field | Type | Description |
|---|---|---|
| cursor | string | null | Continuation cursor from the previous response. Pass the value unchanged. |
| hasMore | boolean | Whether more results are available. |
Request Example
Response Example
This excerpt shows the first item of each list. Long text and URLs are shortened; pointCost is the charge for the complete response. The playground contains the full schema.
Points Usage
0.8 points per primary result.
Empty results and failed requests are not charged. Duplicate IDs are counted once within a response. Separate calls and pages are billed separately. See Social Media Reviews API billing.

