# upAPI documentation (https://upapi.io/docs)



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.

**Onboard your agent to upAPI:** copy this sentence into any AI coding agent.

```text
Fetch and execute the appropriate instructions to set me up for upAPI from https://upapi.io/docs/agent-setup/prompt.md
```

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 [#where-things-live]

| Surface     | URL                                                      | What it is                                                |
| ----------- | -------------------------------------------------------- | --------------------------------------------------------- |
| Marketplace | [upapi.io/marketplace](https://upapi.io/marketplace)     | Browse operations, read schemas, run one from the browser |
| Dashboard   | [app.upapi.io/dashboard](https://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](https://app.upapi.io/status)       | Live health of the platform                               |

Operations are grouped into categories on the
[marketplace index](https://upapi.io/marketplace), and each one has a detail page
at `upapi.io/apis/{category}/{name}` carrying its schema, a curl
example, code snippets and a link to 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](https://app.upapi.io/api/catalog), so it tracks what
exists far more closely than any page here can.

## Calling an operation [#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:

```bash
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](https://upapi.io/docs/authentication) for why, and
[Quickstart](https://upapi.io/docs/quickstart) to get from zero to that call.

## Ways in [#ways-in]

<Cards>
  <Card title="Quickstart" href="/quickstart" description="Create a key and make your first call." />

  <Card title="Calling operations" href="/api" description="The one request shape every operation in the catalog shares." />

  <Card title="Errors" href="/errors" description="The single error envelope and every code the gateway can return." />

  <Card title="Rate limits" href="/rate-limits" description="Burst limits, weighted units, and the headers that report both." />

  <Card title="TypeScript SDK" href="/sdk" description="A zero-dependency typed client for every operation." />

  <Card title="MCP server" href="/mcp" description="Expose the whole catalog to Claude, Cursor and other MCP clients." />

  <Card title="Agent setup" href="/agent-setup" description="One sentence sets upAPI up inside Claude Code, Codex, Cursor or OpenCode." />

  <Card title="FAQ" href="/faq" description="Guests, key scope, quotas, hosted or local MCP, and what a failed call costs." />

  <Card title="Browse operations" href="https://upapi.io/marketplace" description="Every operation's schema, examples and playground, on the marketplace." />
</Cards>

## Beyond the catalog [#beyond-the-catalog]

The platform also runs code and configuration you own:

* **[Hosted functions](https://upapi.io/docs/platform/hosted-functions)** — your own TypeScript,
  executed in a V8 isolate behind the same gateway, key and metering.
* **[Products](https://upapi.io/docs/platform/products)** — bundle operations you use together.
* **[Proxies](https://upapi.io/docs/platform/proxies)** — bring your own egress IP, per request or
  per organization.
