Trust

Security & Data Handling

How your data flows through AIPower, what we store, what we don't, and the infrastructure that protects it.

๐Ÿ”’ In transit: TLS-only

Every connection to api.aipower.me and aipower.me is TLS 1.3 encrypted. We do not accept plaintext HTTP. Certificates are issued and auto-rotated by Cloudflare.

๐Ÿ”‘ API keys: hashed at rest

When you generate an API key, we store only the SHA-256 hashof it in our database. The raw key is shown once on creation; we cannot recover it if you lose it (you'd create a new one). Key verification on each API call re-hashes and compares, so the plaintext never touches our database.

๐Ÿ’ฌ Prompts and completions: not stored by default

We do not log or retain your prompt text or the model's response. What we do log per request: timestamp, model, input/output token counts, latency, cost. This is the minimum needed to show you accurate usage on the dashboard. We never train models on your data.

๐Ÿ›ก๏ธ Bot & abuse defense (7 layers)

  • L0 โ€” Cloudflare Turnstile CAPTCHA on signup
  • L1 โ€” Bot-User-Agent filtering (curl/python-requests/etc. rejected at signup endpoint)
  • L2 โ€” Email validation (disposable-domain blacklist, keyboard-mash + bot-pattern detection, MX record lookup)
  • L3 โ€” Per-IP + per-domain signup rate limits
  • L4 โ€” Mandatory email verification via Resend
  • L5 โ€” Free-tier daily call cap + expensive-model restriction (paywall absorbs the rest)
  • L6 โ€” Hourly registration-rate anomaly alerts to ops
We wrote a full post-mortem of a real attack: How we stopped a 340-bot registration attack in 4 hours.

๐Ÿ—๏ธ Infrastructure

Running on Cloudflare Workers (global edge, 280+ cities), Cloudflare D1 (SQLite at edge), and Cloudflare KV for caches. Payments are processed exclusively via Stripe; we never see or store card numbers. Stripe Radar scores every payment for fraud risk.

๐Ÿ”„ Incident response

We monitor error rates, provider upstream failures, and unusual registration spikes. Real-time alerts are sent to the ops team (Frank) by email. Service status history is at aipower.me/status.

๐Ÿ“Š What we see vs. what we store

DataIn transitStored?Retention
Prompt textProxied to upstreamNoโ€”
Completion textProxied back to youNoโ€”
Request metadata (model, tokens, latency)LoggedYesIndefinite (for billing)
API keyHashed on receiptHash onlyUntil deleted
Email + passwordTLSHashed password (salt+SHA-256)Until account deleted
Payment cardStripe onlyNever on our serversStripe's retention

๐Ÿ“ž Reporting a vulnerability

Found a security issue? Please email security@aipower.meโ€” we respond within 24 hours. Coordinated disclosure preferred; we won't take legal action against good-faith researchers.

Last updated: April 21, 2026 ยท Operated by AI POWER LIMITED (Hong Kong)