upAPI
One API key and one pooled quota across every operation in the marketplace.
upAPI is an API marketplace. Every listing is an operation — a single callable endpoint with a declared input schema, a declared output schema and a price in weighted units. You reach all of them through one gateway, with one key, drawing on one quota.
That last part is the whole point. Most marketplaces make you sign up per API, hold a key per API and buy a quota per API. Here, the key you create in the dashboard calls every public operation, and a month's usage is a single pooled number no matter which mix of operations produced it.
Where things live
| Surface | URL | What it is |
|---|---|---|
| Marketplace | upapi.io/marketplace | Browse operations, read schemas, run one from the browser |
| Dashboard | app.upapi.io/dashboard | Keys, usage, billing, products, hosted functions |
| Gateway | https://api.upapi.io | Where your code calls operations |
| Status | app.upapi.io/status | Live health of the platform |
Operations are grouped into categories on the
marketplace index, and each one has a detail page
at app.upapi.io/marketplace/operations/{slug} carrying its schema, a curl
example, code snippets and a runnable playground. That page is where a specific
operation is documented; this site documents the platform around it. The catalog
is also served live at
app.upapi.io/api/catalog, so it tracks what
exists far more closely than any page here can.
Calling an operation
Every call is a POST to the operation's slug, with your key in x-api-key and
the input as a JSON body:
curl -X POST https://api.upapi.io/github-trending.get \
-H 'x-api-key: upapi_YOUR_KEY' \
-H 'content-type: application/json' \
-d '{"since":"weekly","limit":5}'There is no GET form — see Authentication for why, and
Quickstart to get from zero to that call.
Ways in
Quickstart
Create a key and make your first call.
Calling operations
The one request shape every operation in the catalog shares.
Errors
The single error envelope and every code the gateway can return.
Rate limits
Burst limits, weighted units, and the headers that report both.
TypeScript SDK
A zero-dependency typed client for every operation.
MCP server
Expose the whole catalog to Claude, Cursor and other MCP clients.
Browse operations
Every operation's schema, examples and playground, on the marketplace.
Beyond the catalog
The platform also runs code and configuration you own:
- Hosted functions — your own TypeScript, executed in a V8 isolate behind the same gateway, key and metering.
- Products — bundle operations you use together.
- Proxies — bring your own egress IP, per request or per organization.