# infrai > infrai gives your app 14 production backend modules — AI, video, > email, SMS, scheduling, storage, payments and more — behind one API key, one > wallet and one bill. It is a ZERO-INSTALL REST API: there is no SDK. Call it > over HTTP from any language. AI inference is billed at China 0% / > Western 5% markup. Every response carries cost/vendor/latency > metadata; every error carries a machine-readable hint and a retryable flag. ## How to call it (no SDK) Every capability is a POST (or GET) to `https://api.infrai.cc/v1/...` with a Bearer key and JSON body. For example, a chat completion: ```bash curl -X POST https://api.infrai.cc/v1/ai/chat \ -H "Authorization: Bearer $INFRAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{"messages": [{"role": "user", "content": "summarize this PR"}]}' ``` Responses use the envelope `{ ok, data, error, metadata }`. To get a key, sign in at the console with Google/GitHub for a project key + $2 free credit (email sign-in starts at $0). On `402 INSUFFICIENT_CREDIT`, POST `https://api.infrai.cc/v1/account/topup` and open the returned `checkout_url`. ## 14 GA modules (392 REST routes) - `ai-runtime` (https://api.infrai.cc/v1/ai) — ai.chat, ai.embed, ai.image - `ai-video` (https://api.infrai.cc/v1/video) — video.generate, video.status, video.cancel - `comm-email` (https://api.infrai.cc/v1/email) — email.send, email.get, email.list - `sms` (https://api.infrai.cc/v1/sms) — sms.send, sms.otp, sms.verify - `scheduling` (https://api.infrai.cc/v1/scheduling) — scheduling.cron.create, scheduling.cron.list, scheduling.queue.publish - `observability` (https://api.infrai.cc/v1/observability) — observability.error.capture, observability.metric.report, observability.flag.is_enabled - `public-url` (https://api.infrai.cc/v1/public-url) — public_url.create, public_url.claim, public_url.domain.create - `captcha` (https://api.infrai.cc/v1/captcha) — captcha.verify, captcha.widget.create - `pdf` (https://api.infrai.cc/v1/pdf) — pdf.generate, pdf.merge, pdf.split - `image-process` (https://api.infrai.cc/v1/image) — image.process, image.metadata - `realtime` (https://api.infrai.cc/v1/realtime) — realtime.token.issue, realtime.channel.create, realtime.publish - `storage` (https://api.infrai.cc/v1/storage) — storage.bucket.create, storage.bucket.list, storage.object.presign - `analytics` (https://api.infrai.cc/v1/analytics) — analytics.track, analytics.identify, analytics.funnel - `billing` (https://api.infrai.cc/v1/account) — account.balance, account.usage, account.topup ## API hosts - Western: https://api.infrai.cc - China: https://cn.infrai.cc ## For AI agents & tools (machine discovery) If you are an AI coding assistant or agent, call infrai directly over HTTP, or use the MCP server: - MCP server (one command, all 14 modules as tools): `npx @infrai/mcp-server` Works with Claude Desktop, Claude Code, Cursor, Cline, Continue, Windsurf, Aider. - OpenAPI 3.1 spec (generated from SSOT, with request schemas + examples): https://infrai.cc/.well-known/openapi.json - Discovery manifest (full capability table: method/path/params/examples/errors): https://infrai.cc/.well-known/infrai-discovery.json - MCP registry descriptor: https://infrai.cc/.well-known/mcp.json Every documented capability ships runnable curl / Python (requests) / JavaScript (fetch) examples in the discovery manifest and the docs. ## Links - Site: https://infrai.cc - Docs: https://infrai.cc/docs