# THORChain Swap Webhooks and Event Polling

**THORChain Swap does not emit webhooks.** The site holds no accounts and no server-side user state, so there is no subscription to register a callback URL against. Swap state lives on the chains themselves, and that is where an agent should watch for it.

## Watch a swap instead

A swap started through this interface is an ordinary on-chain transaction. Track it with the public THORChain APIs:

- `GET https://thornode.ninerealms.com/thorchain/tx/status/{txid}` — stage-by-stage status of an inbound transaction, including observation, swap, and outbound scheduling.
- `GET https://midgard.ninerealms.com/v2/actions?txid={txid}` — the indexed action record with input, output, and fees.
- `GET https://thornode.ninerealms.com/thorchain/inbound_addresses` — current inbound addresses and chain halt state, before instructing a user to send funds.

Poll on the pace of the source chain's block time (Bitcoin minutes, Ethereum seconds) and stop when the outbound transaction is confirmed. There is no rate-limit benefit to polling faster than a block.

## Watch protocol state

- `list_pools` and `get_network_status` on the [MCP server](https://swap.thorchain.org/developers/mcp) — pool depths, prices, outbound fees, and halt-related parameters. Both are read-only and cheap; `get_network_status` accepts a `fields` array so a poller can fetch only the keys it watches.

## Status of this interface

- `GET https://swap.thorchain.org/.well-known/status` — availability of the discovery surface.

If a genuine event-push product is ever added here, it will be documented on this page and in the [OpenAPI description](https://swap.thorchain.org/openapi.json) first.

## Related

- [REST API reference](https://swap.thorchain.org/developers/api)
- [MCP server](https://swap.thorchain.org/developers/mcp)
