Feelia for AI agents and developers
Machine access to Feelia's Kick iGaming streamer intelligence: a REST API at https://feelia.uk/v1, an MCP server at https://feelia.uk/mcp, one API-key header for both, and self-service ways to pay — including ways an agent can pay by itself.
REST /v1MCP streamable-httpAPI keycrypto invoicex402 (USDC)
/optout/<slug> and the opt-out is honoured everywhere, including this API.Authentication
Authorization: Bearer fk_live_…
- Pro subscription ($40/month or $400/year, crypto billing): log in at /app → API keys → create. Unlimited within the rate limit, contacts included.
- Buy a 24-hour or 30-day key with a crypto invoice (USDT, BTC, ETH and more) — no account needed, see Buy a key.
- Buy a key with one x402 payment (USDC on Base) — when x402 is enabled on this deployment;
GET /v1/pricingtells you.
Keys never carry dashboard-admin rights. An invalid, revoked, expired or not-yet-paid key answers 401 {"error":"invalid_api_key"}.
Free tier (no key)
GET /v1/pricing,GET /v1/access,GET /v1/stats,GET /v1/brands— always free.GET /v1/searchwithlimit<=5— 20 searches per day per IP;GET /v1/streamers/{id}— 5 profiles per day per IP.- MCP:
feelia_about,feelia_list_brands, and the same preview quotas forfeelia_search_streamers/feelia_get_streamer.
Beyond the preview, priced routes answer 402 Payment Required with a JSON body that repeats the options on this page (and x402 headers when enabled).
REST endpoints
| Method & path | Access | Purpose |
|---|---|---|
GET /v1/pricing | free | prices, networks, how to pay |
GET /v1/access | free | who you are: tier, key status, remaining free quota |
GET /v1/stats | free | catalog counters |
GET /v1/brands | free | sponsor brands ranked by distinct streamers (days, limit) |
GET /v1/search | preview · key · x402 | filters: activity (casino, poker, betting, crypto or exact slots / sports_betting / casino_table / crypto_trading), language, country, brand, exclude_brands, sponsor_status (free / dormant / active), min_avg_viewers, max_avg_viewers, min_followers, is_live, coverage=category_mismatch (covert only), max_risk, sort, limit (≤50), offset |
GET /v1/streamers/{id or slug} | preview · key · x402 | profile: 30-day rollup, brands, sponsor timeline, brand history, recent streams, risk score — no contacts |
GET /v1/streamers/{id or slug}/contacts | key | publicly listed business contacts with source and last-verified date |
POST /v1/keys/cryptocloud | free to call | mint a pending key + crypto invoice |
POST /v1/keys/x402/{day|month} | x402 | mint an active key with one USDC payment (when enabled) |
GET /v1/keys/me | key | key status, expiry, today's usage, checkout_url while pending |
POST /v1/keys/recover | x402 signature | re-issue a never-used key whose purchase response was lost |
Full schema: /openapi.json (only /v1 is published). Rate limits: 30 requests/min anonymous, 60/min per x402 payer, 120/min per key, 5 key purchases per hour per IP. Responses carry X-RateLimit-Limit / X-RateLimit-Remaining; 429 carries Retry-After.
# free preview, no key
curl "https://feelia.uk/v1/search?activity=casino&language=es&sponsor_status=free&limit=5"
# with a key
curl -H "Authorization: Bearer fk_live_…" "https://feelia.uk/v1/search?activity=betting&min_avg_viewers=200&limit=25"
curl -H "Authorization: Bearer fk_live_…" "https://feelia.uk/v1/streamers/classybeef"
curl -H "Authorization: Bearer fk_live_…" "https://feelia.uk/v1/streamers/classybeef/contacts"
Buy a key
With a crypto invoice (USDT, BTC, ETH …) — works today
curl -X POST https://feelia.uk/v1/keys/cryptocloud -H 'Content-Type: application/json' -d '{"plan":"day"}'
Response 201: key (store it — shown once), status: "pending", checkout_url, invoice. Pay the invoice; the key activates within about 5 minutes of confirmation. Poll GET /v1/keys/me with the key as Bearer. Plans: day = $2.00 for 24 hours, month = $40.00 for 30 days (validity counts from activation). Keys include the contacts scope.
With x402 (USDC on Base) — when enabled
POST https://feelia.uk/v1/keys/x402/day answers 402 with a PAYMENT-REQUIRED header (x402 v2, exact scheme, upfront flow). Sign the USDC authorization with any x402-capable client or wallet, retry with PAYMENT-SIGNATURE, and the 201 body contains key. Lost the response? POST /v1/keys/recover with the same PAYMENT-SIGNATURE header, once, before the key's first use. Per-request payments ($0.01 per search or profile) work the same way on GET /v1/search and GET /v1/streamers/{id}.
MCP server
- URL:
https://feelia.uk/mcp(Streamable HTTP; current and legacy protocol versions) - Auth: the same
Authorization: Bearer <key>header on the MCP connection; free tools work without it - Tools:
feelia_about,feelia_search_streamers,feelia_get_streamer,feelia_get_contacts(key),feelia_list_brands,feelia_access_options - Protected tools without a key return a tool error that explains exactly how to get one — the model can act on it.
claude mcp add --transport http feelia https://feelia.uk/mcp --header "Authorization: Bearer fk_live_…"
{"mcpServers": {"feelia": {"type": "http", "url": "https://feelia.uk/mcp",
"headers": {"Authorization": "Bearer fk_live_…"}}}}
claude.ai / Claude Desktop custom connector: add https://feelia.uk/mcp with No sign-in; organisations with request-header auth can add the header authorization = Bearer fk_live_…. ChatGPT connectors cannot send API keys today, so ChatGPT gets the free tools only; OAuth sign-in is planned.
Data notes
coverage_flag:gambling_confirmed= gambling inside a Kick gambling category;category_mismatch= covert: gambling content in a non-gambling category.sponsor_status:active= a sponsor brand seen in the last 7 days;dormant= 8–30 days ago;free= none in 30 days.risk_score0–100: audience-quality risk from viewer-to-chat ratio, irregular viewer curves and related signals (higher = riskier).- Classification comes from stream titles, categories and bios and from live thumbnails, judged by a System One model (TypeSafe Jev) with calibrated probabilities; uncertain cases are left unclassified rather than guessed.