# UApiPro — Free public REST API platform

UApiPro is a curated catalog of 100+ free public REST APIs at <https://uapis.cn>. Every endpoint returns JSON over HTTPS, supports CORS, and is documented once in a single OpenAPI specification.

This page is the markdown alternate of the homepage. Agents and CLI tools that prefer plain markdown can fetch this URL instead of crawling the rendered HTML at `https://uapis.cn/`.

## Quick links

- **OpenAPI specification:** <https://uapis.cn/openapi.json>
- **API reference:** <https://uapis.cn/docs/api-reference/introduction>
- **Docs page Markdown:** append `.md` to any docs URL, for example <https://uapis.cn/en/docs/getting-started/migration-guide.md>
- **Quickstart:** <https://uapis.cn/docs/getting-started/quickstart>
- **Pricing (markdown):** <https://uapis.cn/pricing.md>
- **Pricing (web):** <https://uapis.cn/pricing>
- **Status:** <https://uapis.cn/status>
- **MCP server card:** <https://uapis.cn/.well-known/mcp/server-card.json>
- **A2A agent card:** <https://uapis.cn/.well-known/agent-card.json>
- **OpenAI plugin manifest:** <https://uapis.cn/.well-known/ai-plugin.json>
- **API catalog (RFC 9727):** <https://uapis.cn/.well-known/api-catalog>
- **Single-file LLM context:** <https://uapis.cn/llms-full.txt>

## What you get

| Category    | Highlights |
|-------------|------------|
| Network     | IP geolocation (`/network/ipinfo`), DNS resolution (`/network/dns`), WHOIS, ICP query, URL status |
| Text        | AES-128/192/256 encrypt and decrypt, MD5, Base64, sensitive-word detection, Markdown-to-PDF |
| Image       | OCR, NSFW detection, compression, Base64 conversion, QR code generation, Gravatar |
| Misc        | Weather, hot-board feeds, lunar/world time, phone info, news image |
| Convert     | JSON formatting, Unix-time conversions |
| Game        | Minecraft player and server lookups, Steam profile, Epic free games |
| Social      | Public profile metadata for QQ, Bilibili, GitHub |
| Translate   | Standard, streaming, and AI-assisted translation |
| Search      | Aggregated web search returning structured JSON |
| WebParse    | Page metadata extraction, image extraction, async Markdown extraction |
| Status      | Per-key usage and rate-limit introspection |

## Authentication

```bash
# Free-tier request — no key required.
curl 'https://uapis.cn/api/v1/network/myip'

# Paid request — send the API key as a Bearer token.
curl -H "Authorization: Bearer $UAPI_API_KEY" \
     'https://uapis.cn/api/v1/translate/text' \
     -X POST -H 'Content-Type: application/json' \
     -d '{"text":"Hello, world.","to_lang":"zh"}'
```

Get an API key at <https://uapis.cn/console>. The `X-API-Key` header is accepted as a legacy alternative. OAuth 2.0 metadata is published at <https://uapis.cn/.well-known/oauth-authorization-server>.

## Errors

```json
{
  "code": "SERVICE_BUSY",
  "message": "Too many requests, please try again later.",
  "details": {}
}
```

Every error includes a machine-readable string `code` and a human-readable `message`; optional structured context lives in `details`. The request id for support tickets is returned in the `X-Request-ID` response header. Rate-limit state is exposed via `RateLimit-Policy`, `RateLimit`, `X-RateLimit-Limit`, `X-RateLimit-Remaining`, and `Retry-After` headers.

## SDKs

- TypeScript: `npm install @uapi/sdk` — <https://github.com/AxT-Team/uapi-sdk-typescript>
- Python: `pip install uapi-sdk` — <https://github.com/AxT-Team/uapi-sdk-python>
- Go, Java, PHP, C#, C++, Rust, browser JS: <https://github.com/AxT-Team>

## Agent integration

- MCP server (Streamable HTTP): <https://github.com/AxT-Team/uapi-mcp>
- CLI: <https://github.com/AxT-Team/uapi-cli>
- Skills repository: <https://github.com/AxT-Team/uapi-agent-skills>

## Trust

- About: <https://uapis.cn/docs/getting-started/about-us>
- Privacy policy: <https://uapis.cn/docs/getting-started/privacy-policy>
- Fair use & rate limits: <https://uapis.cn/docs/getting-started/fair-use-and-rate-limiting>
