> For the complete documentation index, see [llms.txt](https://docs.nexus.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nexus.xyz/overview/exchange-testnet.md).

# Exchange Testnet

Trade the testnet venue: authenticate, mint a key, claim synthetic USDX, and place an order.

The Nexus Exchange is live on testnet at [nexus.xyz/trade](https://nexus.xyz/trade).

You can authenticate via the API, place orders, and trade across the live perpetual futures markets.

The frontend displays live exchange state in read-only mode. All trading is conducted via the REST and WebSocket APIs.

Full API documentation is the [API Reference](https://docs.nexus.xyz/api-reference) section of these docs.

### Getting Started

#### 1. Authenticate

Sign in with your Ethereum wallet using an EIP-191 personal signature:

```bash
POST /auth/login
```

Sign the message `"Sign in to Nexus Exchange"` to receive a session token (24-hour TTL). Your account is created automatically on first sign-in.

#### 2. Create an API Key

```bash
POST /keys
```

Returns an HMAC key pair (`key_id` + `secret`). The secret is shown once — store it immediately.

Manage keys with `GET /keys` (list) and `DELETE /keys/{key_id}` (revoke).

#### 3. Fund your account

Credit your testnet account with synthetic USDX from the faucet:

```bash
POST /account/credit
```

You need a USDX balance before you can place orders. Check your balance at any time via `GET /account`.

**Each API key can claim up to 500 test USDX per day.**

#### 4. Place an Order

Authenticate all trading requests with three headers: `X-API-Key`, `X-Timestamp`, `X-Signature`.

```bash
POST /orders
```

```json
{
  "market_id": "BTC-USDX-PERP",
  "side": "Buy",
  "order_type": "Limit",
  "price": "67000",
  "quantity": "0.01",
  "time_in_force": "GTC"
}
```

See the [API Reference](https://docs.nexus.xyz/api-reference) section for complete authentication examples and all available endpoints.

### Markets

Three crypto perpetuals are live, all denominated in USDX:

| Market          | Underlying |
| --------------- | ---------- |
| `BTC-USDX-PERP` | Bitcoin    |
| `ETH-USDX-PERP` | Ether      |
| `SOL-USDX-PERP` | Solana     |

The listed set moves as markets are listed and delisted — query `GET /markets` for what is live right now, or `GET /markets/summary` for the set with its statistics. See the [Asset Directory](/asset-directory/asset-directory.md) for the classes that follow.

### Venue telemetry

Aggregate venue telemetry is available over the API, and those endpoints are **public** — no API key:

| Endpoint                          | What it returns                                        |
| --------------------------------- | ------------------------------------------------------ |
| `GET /stats`                      | Venue snapshot, including rolling unique-trader counts |
| `GET /stats/history`              | Throughput samples over time                           |
| `GET /stats/volume`               | Cumulative traded notional, venue total and per market |
| `GET /stats/open-interest`        | Open interest, long and short reported separately      |
| `GET /stats/balance-distribution` | Accounts per balance band                              |

Every one of these is documented as carrying **no per-account data by construction**, which is why they are public. See [Venue Statistics](https://docs.nexus.xyz/api-reference/guides/statistics) for the response shapes and the sign and units traps — particularly that open interest reports the two sides separately and that `gross_oi_two_sided_quote` is twice the one-sided figure.

There is no public analytics dashboard on the production frontend today. Use the endpoints above.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.nexus.xyz/overview/exchange-testnet.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
