> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xquik.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Twitter scraper API & X API alternative guide

> Use Xquik as a Twitter API alternative. Search tweets, export followers and replies, retrieve profiles, monitor accounts, post tweets, and send webhooks.

<blockquote className="agent-llms-directive">
  For the complete documentation index, see <a href="/llms.txt">llms.txt</a>.
</blockquote>

Use Xquik as a Twitter API alternative for public reads and automated actions.
It works as an X API alternative across REST, SDKs, webhooks, and MCP.

The Twitter search API and tweet scraping API search recent and top tweets. The
follower scraping API exports follower and following profiles. Use
tweet reply scraping for conversations and authors. The Twitter webhook API delivers
signed monitor events. You can also post tweets and monitor accounts every second.

<Note>
  Public tweet, profile, follower, reply, timeline, community, and list reads
  need no connected X account. Every X write requires one. Private reads also
  require one: DMs, bookmarks, notifications, home timeline, likes, likers &
  mutual followers. See [Connect X account](/api-reference/x-accounts/connect).
</Note>

## Choose a Twitter API workflow

Start with the task you need:

* [Search recent or top tweets](/api-reference/x/search-tweets) by query.
* [Export tweet replies](/api-reference/x/tweet-replies) with author profiles.
* [Export followers](/api-reference/x/followers) with pagination cursors.
* [Export following profiles](/api-reference/x/following) for one account.
* [Retrieve profiles](/api-reference/x/twitter-profile-lookup) by username or user ID.
* [Create account monitors](/api-reference/monitors/create) for new tweets and profile changes.
* [Create keyword monitors](/api-reference/monitors/create-keyword) for matching tweets.
* [Send Twitter webhook events](/api-reference/webhooks/create) to your HTTPS endpoint.

The Twitter scraper API returns tweets, profiles, timelines, communities, lists,
and media as structured JSON.

<CardGroup cols={2}>
  <Card title="Monitors & events" icon="bell" href="/api-reference/monitors/create">
    Create account and keyword monitors, retrieve events, and manage webhooks
  </Card>

  <Card title="Draws & extractions" icon="shuffle" href="/api-reference/draws/create">
    Run tweet giveaway draws. Extract tweets, replies, profiles, and followers
  </Card>

  <Card title="Tweets, profiles & followers" icon="database" href="/api-reference/x/twitter-profile-lookup">
    Search tweets, retrieve profiles, export followers, and download media
  </Card>

  <Card title="X write actions" icon="pen-line" href="/api-reference/x-write/create-tweet">
    Post tweets, like, retweet, follow, send DMs, and update profiles
  </Card>

  <Card title="Account & billing" icon="user" href="/api-reference/account/get">
    Manage credits, API keys, drafts, styles, and subscriptions
  </Card>

  <Card title="Accountless paid reads" icon="wallet-cards" href="/guides/guest-wallets">
    Prepaid guest keys for the eligible paid-read routes
  </Card>
</CardGroup>

<div className="related-api-links">
  <Accordion title="Related follower, list & community APIs" icon="link">
    * Profiles: [Search users](/api-reference/x/search-users) · [Search autocomplete](/api-reference/x/search-autocomplete) · [Get user](/api-reference/x/twitter-profile-lookup) · [Batch users](/api-reference/x/batch-users)
    * Followers: [Followers](/api-reference/x/followers) · [Following](/api-reference/x/following) · [Follower IDs](/api-reference/x/follower-ids) · [Following IDs](/api-reference/x/following-ids) · [Creator subscriptions](/api-reference/x/user-subscriptions) · [Affiliates](/api-reference/x/user-affiliates) · [Similar accounts](/api-reference/x/user-similar) · [Verified followers](/api-reference/x/verified-followers) · [Followers you know](/api-reference/x/followers-you-know) · [Check follower](/api-reference/x/check-follower)
    * Lists: [Search lists](/api-reference/x/search-lists) · [User lists](/api-reference/x/user-lists) · [List memberships](/api-reference/x/user-list-memberships) · [List members](/api-reference/x/list-members) · [List followers](/api-reference/x/list-followers)
    * Communities: [Find](/api-reference/x/community-find) · [Popular](/api-reference/x/community-popular) · [Topics](/api-reference/x/community-topics) · [Suggested](/api-reference/x/community-suggested) · [Details](/api-reference/x/community-info) · [Members](/api-reference/x/community-members) · [Moderators](/api-reference/x/community-moderators) · [Timeline](/api-reference/x/community-tweets) · [Media](/api-reference/x/community-media) · [Keyword search](/api-reference/x/community-search)
  </Accordion>
</div>

## Popular Twitter scraper API tasks

<CardGroup cols={2}>
  <Card title="Estimate tweet scraping credits" icon="calculator" href="/api-reference/extractions/twitter-scraping-cost-estimator">
    Quote credits before scraping tweets, followers, replies, profiles, or timelines.
  </Card>

  <Card title="Review Twitter scraping jobs" icon="history" href="/api-reference/extractions/twitter-scraping-job-history">
    List past tweet, follower, reply, profile, and timeline extraction jobs.
  </Card>

  <Card title="Check account monitor status" icon="radar" href="/api-reference/monitors/twitter-account-monitor-status">
    Inspect one Twitter account monitor's profile, event filters, and active state.
  </Card>

  <Card title="Stop a Twitter account monitor" icon="bell-off" href="/api-reference/monitors/delete-twitter-account-monitor">
    Delete an account monitor and stop its tweet and profile alerts.
  </Card>

  <Card title="Review Twitter giveaway history" icon="trophy" href="/api-reference/draws/twitter-giveaway-history">
    List past tweet giveaway draws with tweet URLs, statuses, and entry counts.
  </Card>

  <Card title="Activate an Xquik subscription" icon="credit-card" href="/api-reference/account/subscription-checkout">
    Create a hosted checkout for API access and recurring credits.
  </Card>
</CardGroup>

## Twitter community & audience scraping

<CardGroup cols={2}>
  <Card title="Retrieve X community details" icon="users" href="/api-reference/x/community-info">
    Read a community's rules, member count, creator, moderators, and join policy.
  </Card>

  <Card title="Export X community members" icon="users" href="/api-reference/x/community-members">
    Retrieve community member profiles, usernames, verification, and follower counts.
  </Card>

  <Card title="Export X community moderators" icon="shield-user" href="/api-reference/x/community-moderators">
    Retrieve moderator profiles, bios, verification, followers, and following.
  </Card>

  <Card title="Scrape X community tweets" icon="messages-square" href="/api-reference/x/community-tweets">
    Export recent community tweets, authors, replies, reposts, likes, and media.
  </Card>

  <Card title="Search tweets in one community" icon="search" href="/api-reference/x/community-search">
    Filter one community's tweets by keyword, recency, or top results.
  </Card>

  <Card title="Export a Twitter account's following" icon="user-plus" href="/api-reference/x/following">
    Retrieve profiles for every account one Twitter user follows.
  </Card>

  <Card title="Scrape tweet retweeters & repost users" icon="repeat-2" href="/api-reference/x/retweeters">
    Retrieve profiles for accounts that retweeted or reposted one tweet.
  </Card>
</CardGroup>

## Base URL

```text theme={null}
https://xquik.com/api/v1
```

Xquik serves all endpoints over HTTPS only. Always use the full HTTPS base URL.

## OpenAPI spec

Xquik publishes the full API specification as an OpenAPI 3.1 document:

```text theme={null}
https://xquik.com/openapi.json
```

Xquik also serves YAML at:

```text theme={null}
https://docs.xquik.com/openapi.yaml
```

Use either format with OpenAPI tools or client generators. Xquik publishes the spec through [RFC 9727](https://www.rfc-editor.org/rfc/rfc9727) service discovery.

Xquik publishes API service discovery at:

```text theme={null}
https://xquik.com/.well-known/api-catalog
```

## Run in Postman

Fork the official Xquik collection into your Postman workspace. It includes
safe starter requests for tweets, users, timelines, and trends.

[![Run in Postman](https://run.pstmn.io/button.svg)](https://app.getpostman.com/run-collection/12709954-5ee4fae0-138a-4615-ae47-ac4be7904df2?action=collection%2Ffork\&source=rip_markdown)

[View the hosted collection documentation](https://documenter.getpostman.com/view/12709954/2sBY4TpxXK).

## Authentication

Account API keys can use `x-api-key`:

```text theme={null}
x-api-key: xq_your_api_key_here
```

Generate account keys from the [API Keys dashboard](https://dashboard.xquik.com/en/account?tab=api-keys).
Xquik API keys also support `Authorization: Bearer xq_your_api_key_here`.
OAuth 2.1 Bearer tokens keep their granted account scopes.

Accountless guest keys use `Authorization: Bearer` with the fixed `paid_reads` scope on the [eligible routes](/guides/guest-wallets#eligible-paid-read-routes).
A verified payment activates each key. See [Authentication](/api-reference/authentication).

### Machine Payments Protocol

Fixed-price GET operations accept anonymous
[MPP](/mpp/machine-payments-protocol) payments. The server returns `402` with a
`WWW-Authenticate: Payment` challenge. The response can include a guest wallet
action. Complete the MPP challenge or ask the user to confirm a guest wallet.
A failed request creates no checkout.

### Accountless guest wallets

`POST /api/v1/guest-wallets` creates a hosted checkout after the user confirms. It returns a guest key and status URL without requiring an account, email, or dashboard.
Verified payment activates paid reads for that key.

Anonymous requests to non-MPP paid reads return `401` with a Bearer challenge and guest wallet action.
The direct MPP reads return `402` with a Payment challenge and the same optional action. Neither response creates checkout.

See [Accountless guest wallets](/guides/guest-wallets) for creation, polling, top-ups, scope boundaries, and MCP behavior.

## First request

Run this request to verify your API key:

```bash theme={null}
curl -s https://xquik.com/api/v1/account \
  -H "x-api-key: xq_your_api_key_here" | jq
```

**Response.**

```json theme={null}
{
  "plan": "active",
  "monitorsAllowed": 9007199254740991,
  "monitorsUsed": 0,
  "monitorBilling": {
    "activeDailyEstimate": "0",
    "activeHourlyBurn": "0",
    "creditsPerActiveMonitorDay": "500",
    "creditsPerActiveMonitorHour": "21",
    "eventsIncluded": true,
    "instantCheckIntervalSeconds": 1,
    "unlimitedSlots": true
  },
  "creditInfo": {
    "balance": "140000",
    "lifetimePurchased": "140000",
    "lifetimeUsed": "0",
    "autoTopupEnabled": false,
    "autoTopupAmountDollars": 10,
    "autoTopupThreshold": "50000"
  }
}
```

Replace `xq_your_api_key_here` with your key. After `401`, confirm the `x-api-key` header and `xq_` prefix.

## Path IDs

Post & user params in `/x/tweets`, `/x/articles`, `/x/users` & `/x/dm` paths take these forms.

| Param | Send | Examples |
| - | - | - |
| Post `id` or `tweetId` | Post ID or post URL | `2102882545427714266`, `x.com/nasa/status/2102882545427714266` |
| User `id` or `userId` | User ID, username or profile URL | `11348282`, `nasa`, `@nasa`, `x.com/nasa`, `x.com/i/user/11348282` |

URL-encode a URL in the path, as in `/x/tweets/x.com%2Fnasa%2Fstatus%2F2102882545427714266`.
Post URLs work on x.com & twitter.com, with or without `https://`, `www.` or `mobile.`.
Queries, fragments, `/i/status/` & `/i/web/status/` links work too.
A number is always a user ID. Usernames have up to 15 characters.
Writes look up a username's user ID first. An unknown username returns `422 x_target_not_found`.
Other input returns `400 invalid_tweet_id` or `400 invalid_user_id`. The message says what to send.

## Production integration

Use the [X API integration checklist](/guides/x-api-integration-checklist)
before launching a client, workflow, or agent. It covers authentication,
pagination, billing, rate limits, and writes that survive retries.

## Rate limits

<CardGroup cols={1}>
  <Card title="Read requests" icon="database">
    The read bucket covers `GET`, `HEAD`, and `OPTIONS`.
    It allows 500 calls each second.
    Standard read throttles return `Retry-After: 1`.
  </Card>

  <Card title="Write requests" icon="pen-line">
    `POST`, `PUT`, and `PATCH` share a 120 per 60s user bucket.
    Throttled writes return `Retry-After: 60`.
  </Card>

  <Card title="Delete requests" icon="trash">
    `DELETE` requests use a separate 60 per 60s user bucket. Throttled deletes
    return `Retry-After: 60`.
  </Card>
</CardGroup>

Exceeding a bucket returns `429 rate_limit_exceeded` with `Retry-After` and a
JSON `retryAfter` field. See the
[Rate Limits guide](/guides/rate-limits) for backoff implementations.

## Response, error & event contracts

Use these references while building production integrations:

* [X API integration checklist](/guides/x-api-integration-checklist) covers IDs, timestamps, pagination, normalized responses, and monitor events.
* [Error handling](/guides/error-handling) lists error codes and retry actions.
* [Monitor events](/api-reference/events/list) documents tweet and profile event filters.
* [Webhook testing](/guides/twitter-webhook-testing) verifies signed deliveries and retries.

## Next steps

<CardGroup cols={3}>
  <Card title="Error handling" icon="triangle-alert" href="/guides/error-handling">
    Handle error codes with retries and fallbacks.
  </Card>

  <Card title="Rate limits" icon="gauge" href="/guides/rate-limits">
    Read the limits and add backoff.
  </Card>

  <Card title="Workflows" icon="workflow" href="/guides/workflows">
    End-to-end examples: monitors, events, and webhooks.
  </Card>

  <Card title="Tweets, profiles & followers" icon="database" href="/api-reference/x/twitter-profile-lookup">
    User lookups, tweet search, trends, and media downloads.
  </Card>

  <Card title="X write actions" icon="pen" href="/api-reference/x-write/create-tweet">
    Create tweets, likes, retweets, follows, DMs, and profile updates.
  </Card>

  <Card title="Monitors" icon="radar" href="/api-reference/monitors/create">
    Check X accounts every second and receive signed webhook events.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.