# Forced flow stream · API reference · Femtos

> The GET /api/hypercore/forced-flow map, pushed whole on subscribe and every 5 s when it changes. WebSocket channel hc.forced_flow.map on HyperCore: parameters, response fields and a live call per layer.

- Base URL: `https://api.femtos.xyz/v1` (REST) · `wss://api.femtos.xyz/v1/ws` (WebSocket) · MCP: `https://api.femtos.xyz/mcp`
- Auth: `Authorization: Bearer $FEMTOS_KEY`. Free key: https://femtos.xyz/account/new (browser), or with
  no browser: `GET https://femtos.xyz/accounts/agent/challenge`, solve its proof of work, then `POST https://femtos.xyz/accounts/agent/signup`
  (https://femtos.xyz/agents.md#agent-onboarding)
- Decimals are exact strings, times Unix milliseconds, addresses lowercase `0x`
- Whole API in one file: https://femtos.xyz/agents.md · OpenAPI: https://api.femtos.xyz/v1/openapi.json · Index: https://femtos.xyz/llms.txt
- Page with live calls: https://femtos.xyz/reference/ws/forced-flow

WebSocket: get a ticket (`POST https://api.femtos.xyz/v1/ws-ticket` with your key), connect to `wss://api.femtos.xyz/v1/ws?ticket=$TICKET`, send the frame below; the first message has `"snapshot": true`. Details: https://femtos.xyz/agents.md#websocket

## Forced flow stream — WS `hc.forced_flow.map`

The GET /api/hypercore/forced-flow map, pushed whole on subscribe and every 5 s when it changes.

Layers: HyperCore. Not on Elysium or HyperEVM: a channel of HyperCore only.
Page with live calls: https://femtos.xyz/reference/ws/forced-flow?layer=hypercore

| Param | In | Example or values | Meaning |
|---|---|---|---|
| `coin` | filter | `BTC` | HyperCore market |
| `buckets` | filter | `40` | Buckets (1..400) |
| `step` | filter | (optional) | Bucket width, in price (instead of buckets) |
| `range_pct` | filter | `10` | Grid: mark ± range_pct % (default 10) |

```json
{"op":"subscribe","channel":"hc.forced_flow.map","filter":{"coin":"BTC","buckets":"40","range_pct":"10"}}
```

| Field | Type | Meaning |
|---|---|---|
| `snapshot: true` | object | every frame: the full GET /api/hypercore/forced-flow answer |

## Related (Price-level maps)

- [Liquidation price map](https://femtos.xyz/reference/liquidation-map.md) `GET /v1/hypercore/liquidation-map`: Liquidation prices of every open position, from Hyperliquid's formula on each account's state, bucketed like the stop map. (HyperCore)
- [Liquidation map stream](https://femtos.xyz/reference/ws/liquidations-map.md) `WS hc.liquidations.map`: The GET /api/hypercore/liquidation-map map, pushed whole on subscribe and every 5 s when it changes. (HyperCore)
- [Forced flow](https://femtos.xyz/reference/forced-flow.md) `GET /v1/hypercore/forced-flow`: Stop-loss / take-profit orders and liquidations on the same buckets: the cascade (stops + liquidations, with the move) and the take-profits (against it) at each price. (HyperCore)
- [Stop map stream](https://femtos.xyz/reference/ws/stops-map.md) `WS hc.stops.map`: The GET /api/hypercore/stops map, pushed whole on subscribe and every 5 s when it changes. (HyperCore)

Every page: https://femtos.xyz/reference.md
