# Public Endpoints

Public endpoints return data without authentication.

### Gateway

Unlike the Private API, the Public API routes through a single gateway. Each path prefix maps to the same host:

There is no single gateway. Each path prefix maps to its own service:

| Path prefix       | Host                                      |
| ----------------- | ----------------------------------------- |
| `/api/coins`      | `https://wallet-mutator-view.outpoll.com` |
| `/api/events/*`   | `https://event-service.outpoll.com`       |
| `/api/categories` | `https://event-service.outpoll.com`       |
| `/api/tags/*`     | `https://event-service.outpoll.com`       |

Use HTTPS for every request.

This host serves every public REST endpoint in this section.

### Authentication

No authentication required.

### Sections

* [Public API Overview](https://docs.outpoll.com/api/rest-api/public-endpoints/public-api-overview) for the shared quickstart, errors, and pagination rules.
* [Search Events](https://docs.outpoll.com/api/rest-api/public-endpoints/search-events) for market discovery and filtering.
* [Get Available Coins](https://docs.outpoll.com/api/rest-api/public-endpoints/get-available-coins) for supported assets and collateral metadata.
* [Get Categories](https://docs.outpoll.com/api/rest-api/public-endpoints/get-categories) for category filters and navigation.
* [Get Popular Tags](https://docs.outpoll.com/api/rest-api/public-endpoints/get-popular-tags) for trending discovery tags.

### Example requests

Use the gateway directly for both `GET` and `POST` endpoints.

#### Search events

```bash
curl -X POST "https://outpoll.com/api/events/search?page=0&size=20" \
  -H "Content-Type: application/json" \
  --data '{"sb":"VOLUME_24H","sd":"DESC","l":"en","ss":"bitcoin"}'
```

### Endpoints

* [Get Available Coins](https://docs.outpoll.com/api/rest-api/public-endpoints/get-available-coins) — `GET /api/coins`
* [Search Events](https://docs.outpoll.com/api/rest-api/public-endpoints/search-events) — `POST /api/events/search`
* [Get Categories](https://docs.outpoll.com/api/rest-api/public-endpoints/get-categories) — `GET /api/categories`
* [Get Popular Tags](https://docs.outpoll.com/api/rest-api/public-endpoints/get-popular-tags) — `GET /api/tags/popular`

### Pagination

Only [Search Events](https://docs.outpoll.com/api/rest-api/public-endpoints/search-events) is paginated.

Use these query parameters:

* `page` — zero-based page number
* `size` — items per page

Typical paginated responses include:

* `content` — current page items
* `totalElements` — total matching items
* `totalPages` — total page count

### Example IDs

* `evt_btc_100k_2026` for an event
* `mkt_btc_100k_yes_no` for a market
* `asset_btc_100k_yes` and `asset_btc_100k_no` for outcome assets
* `asset_usdc` for the quote asset
