Endpoints
For the bucketed view — how much stop and take-profit size sits at each distance from mid — use
/market/book/stops/{coin} (book_stop_map) from the L4 order book tools. The trigger endpoints are the order-by-order detail behind that picture.
What each order carries
Prices and sizes are decimal strings, kept at the exchange’s precision — parse them rather than comparing as text. Orders are sorted by
coin, then oid.
Coverage and freshness
- Every market. One exchange-wide snapshot covers native perps, builder dexes (e.g.
xyz:GOLD) and HIP-4 outcomes (e.g.#28200). It is separate from the L4 book rollups, so a coin outside the L4 sweep still has trigger orders here. - Refreshed roughly every minute. Every response says what it is true at:
as_of_height(the L1 block),as_of_block_timeandage_s. Checkage_sbefore citing a number. - Latest only — no history. You can ask what is pending now, not what was pending yesterday, or which orders fired.
- Stale is an error, not an answer. If the snapshot is missing or older than 1,200 seconds (20 minutes), both endpoints return
503. - Untriggered orders only. Resting limit orders are in the L4 book tools; executed fills are in the trade endpoints.
pulse_entity_profile resolves those). It needs no trader record, so any address works, and a wallet with no pending triggers returns an empty list.
Paging
Both endpoints page withlimit (1–500, default 100) and offset (0–100,000). Because the snapshot changes every minute, later pages are pinned to the first page’s snapshot:
1
First page
Call with
offset=0 and no snapshot_height. Note as_of_height, and whether has_more is true.2
Next pages
Keep the same filters, advance
offset by the number of orders returned, and pass snapshot_height=<as_of_height>. An offset above 0 without snapshot_height is a 400.3
If you get 409
The snapshot was replaced while you were paging. Start again at
offset=0 without snapshot_height.count, hasMore, nextOffset and a note with the snapshot_height to send next.
curl
What you can ask
The
address on each order goes straight into pulse_trader_profile or pulse_trader_sharpe, so “whose stops are these, and are they any good” is one follow-up call.
See the tier matrix for plans and the API reference for full response schemas.
