xdataapi.io

Credits and billing

What costs what, and what is free.

One credit is one tweet or one profile returned to you. You buy credits in packs and spend them at any pace.

Packs

PackPriceCreditsPer 1,000
Free$05,000, once$0
Starter$1080,000$0.125
Builder$50500,000$0.100
Growth$2002,500,000$0.080
Scale$60010,000,000$0.060

Enterprise packs from $2,000 with invoice billing and a signed SLA: hello@xdataapi.io.

Buying a pack

Card checkout runs on Stripe. Ask the API for a checkout link and open it:

curl -X POST https://api.xdataapi.io/v1/billing/checkout \
  -H "x-api-key: $KEY" -H "content-type: application/json" \
  -d '{"pack":"builder"}'
{ "url": "https://checkout.stripe.com/c/pay/cs_...", "pack": "builder", "usd": 50, "credits": 500000 }

The credits land in the wallet within seconds of payment, and the rate limit rises to the pack's. Check with /v1/me. Invoice billing for Enterprise: hello@xdataapi.io.

Rules

  • Credits never expire. Paid or free, they stay in the wallet until you spend them.
  • No per-call minimum. A request that returns nothing costs nothing.
  • Failed requests are free. Any status other than 200 charges zero.
  • Cache hits cost half. Responses are cached for a short time per endpoint; a hit is marked "cache": "hit".
  • fresh=true bypasses the cache at double the price.
  • A charge never takes the balance below zero. At zero the API answers 402 with a link to buy more.
  • One wallet per account. All packs land in the same balance; the oldest credits are spent first.
  • Full refund of an unused pack within 14 days, on request to hello@xdataapi.io.

Price per item

ItemCredits
Tweet from any endpoint1
Profile1
Follower or following entry0.1
Follower id, from the ids endpoint0.02
Retweeter entry0.5
Cached itemhalf of the above
fresh=true itemdouble the above
Empty result, error, 404, 4030

Reading the bill

Every response has credits_charged and balance_remaining. The same numbers are in the x-credits-charged and x-balance-remaining headers, so a proxy can meter without parsing the body.

SLA credit

For each full hour where the status page shows success under 99.9 percent, every customer who made a failed request in that hour gets 2 percent of their last pack back as credits. Applied automatically. The number that counts is the outside probe, which calls the public API every minute from a different network.

On this page