# X (formerly Twitter) - Veezee docs

X's wedge is volume and recency: a deep chronological sweep across the whole platform, not just one community.

## Tools

- **x_search** (6 credits): Search X (formerly Twitter). [/docs/tools/x_search](https://veezee.io/docs/tools/x_search)
- **x_get_profile** (4 credits): Get an X profile. [/docs/tools/x_get_profile](https://veezee.io/docs/tools/x_get_profile)
- **x_get_tweets** (4 credits): Get an account's tweets. [/docs/tools/x_get_tweets](https://veezee.io/docs/tools/x_get_tweets)
- **x_get_tweet** (4 credits): Get one tweet with full metrics. [/docs/tools/x_get_tweet](https://veezee.io/docs/tools/x_get_tweet)
- **x_resolve_url** (2 credits): Identify an X URL. [/docs/tools/x_resolve_url](https://veezee.io/docs/tools/x_resolve_url)

`get_usage` checks balance and works the same way across every platform: free, 0 credits. https://veezee.io/docs/tools/get_usage

## Quickstart

### 1. Call it, no key

```
curl "https://api.veezee.io/v1/x/profiles?identifier=nasa"
```

No signup, no card, no key. Keyless calls run under a shared budget of 20 credits per IP per day, recent data only, no realtime, no `Idempotency-Key` needed.

### 2. Or connect over MCP, no key

```
https://mcp.veezee.io/x
```

transport: streamable-http, same keyless budget as REST.

### 3. Hit the daily cap? Buy a key

The error names `upgrade_url`: https://veezee.io/upgrade. Pick a pack, pay, and your API key is shown once on the confirmation page. Send it as `Authorization: Bearer <api_key>` on every REST call (plus an `Idempotency-Key` header on metered routes), or add it to your MCP client's connection headers. That checkout is the only human step in the product.

## What comes back

[x_search](https://veezee.io/docs/fields#x_search), [x_profile](https://veezee.io/docs/fields#x_profile), [x_tweets](https://veezee.io/docs/fields#x_tweets), [x_tweet](https://veezee.io/docs/fields#x_tweet), [url_resolution](https://veezee.io/docs/fields#url_resolution). Full field lists: https://veezee.io/docs/fields

## Limits

- No batch tweet lookup: x_get_tweet fetches one tweet at a time.
- t.co links cannot be resolved offline: x_resolve_url returns INVALID_INPUT for them; expand them in a browser step first.
- People search returns a single page: x_search type=people has no cursor.

Full tool reference: https://veezee.io/docs
