---
name: read-joins
description: Buy Desk, Network, or Convert Check when one answer needs more than one source. 0.02 USDC. Desk is the market. Network is the live rate and settlement time. Convert Check is go, caution, or no-go.
---

# Read a joined call

## Buy

- GET https://keespecs.xyz/api/desk. No query. 0.02 USDC. It replaces price, supply, movers, and alpaca.
- GET https://keespecs.xyz/api/network. No query. 0.02 USDC. It replaces pulse and settlement.
- Convert: GET https://keespecs.xyz/api/convert-check?kind=convert&from={from}&to={to}&amount={amount}
- Bridge: GET https://keespecs.xyz/api/convert-check?kind=bridge&token={token}&toChain={toChain}&amount={amount}. 0.02 USDC. kind is convert or bridge. A parameter from the other kind returns 400 and is not charged.
- Pay the amount in the 402 for that URL. A 0.01 payment does not buy a joined read.
- The price call is free. Supply is free. Stablecoin FX is 0.01 USDC. Movers and Alpaca are free while payments are down when only one of those is needed.
- While payments are down, Desk, Network and bridge checks return the last paid answer marked stale:true with its asOf, for up to 10 minutes; after that 503 with Retry-After. Check stale and asOf before acting. A conversion (kind=convert) still answers 503.

## How to read it

- Desk.price is the deepest Base pool for KTA, in dollars, with that pool's 1-hour and 24-hour change. Not a forecast.
- Desk.supply is token amounts for KTA, USDC, EURC, and cbBTC. Not dollar prices.
- Desk.movers ranks by how many times a token was sent. covers12h is true only when the page reaches back 12 hours. Not dollar volume.
- Desk.alpaca is 24-hour volume in KTA, highest first. Not 12 hours and not operated by Keeta.
- Network.pulse.feed.last60sTps is the live rate. If last60sPartial is true, the page of blocks is shorter than a minute. lifetimeTps is not the live rate.
- Network.settlement is the median and 95th percentile across representatives in a 15-minute window, in milliseconds. Fewer than 3 representatives is unknown.
- If a source does not answer, the joined call fails and nothing is sold.
- Convert Check shows every input. no-go means the route or the peg failed, or two inputs failed. Do not convert.
- These calls do not send, bridge, or quote a bank fee.
- A stale answer keeps the original keespecs_signature. stale, staleAgeS, servedAt, access, and an asOf that was not in the paid body sit outside that signature. POST the response to https://keespecs.xyz/api/verify. Check stale and asOf before acting. The signature can be older than its expiry because the answer is already marked stale.

Catalogue: https://keespecs.xyz/apis
Skills: https://keespecs.xyz/skills
Sending, bridging, banks, cards, and identity: https://keeta.ai/llms.txt
