Catalog / Markets & finance
MARKETS & FINANCE
Kimchi Premium Tracker
Kimchi premium board: Upbit KRW prices vs Binance USDT prices for a token watchlist or the top-turnover KRW markets, with the FX leg anchored on Upbit's own KRW-USDT pair and an optional…
PER CALL · X402 / MPP
From $0.02 per call
1 endpoint at api.ssh.autos. Pay in USDC, no account.
See the endpoint ↓
APIFY STORE
Public actor
Run it with your Apify account: bulk runs, schedules and exports.
Open on Apify ↗
About this data
Kimchi premium board: Upbit KRW prices vs Binance USDT prices for a token watchlist or the top-turnover KRW markets, with the FX leg anchored on Upbit's own KRW-USDT pair and an optional Telegram alert when the premium crosses a threshold. Live board snapshot per run.
From the actor’s Apify Store listing. The per-call endpoint may return a bounded subset; its own description is below.
Buy per call over x402
One endpoint at api.ssh.autos. Each call is one JSON POST, paid in USDC with no account or API key, and answered in the same HTTP response.
POST /v1/crypto/kimchi-premium
Current Upbit KRW and Binance USDT legs for up to three requested tokens, with the KRW-USDT anchor and derived premium percentage.
PRICE$0.02 per call, in USDC
RESULTOne JSON answer per call
PAYMENTx402 or MPP · no account
Identity collisions, missing legs or implausible premiums are flagged and retain null premiums.
Source URLs and timestamps accompany the snapshot.
No alerts, Telegram or stored state.
Input
Send a JSON body to POST https://api.ssh.autos/v1/crypto/kimchi-premium.
| Field | Type | Required | Notes |
|---|
tokens | array of strings | optional | up to 3 items |
|---|
Returned fields
The answer is JSON: records, a list, and summary, the run status and counts. Each record has these 20 fields; a field the source does not publish comes back null.
20 fields per record
| Field | Type | Notes |
|---|
recordKey | string | — |
|---|
source | string | always upbit-binance |
|---|
kind | string | always kimchi_premium |
|---|
token | string | — |
|---|
upbitMarket | string | Upbit KRW market code, e.g. KRW-BTC. |
|---|
koreanName | string | Upbit's Korean display name for the token. |
|---|
upbitPriceKrw | number | — |
|---|
upbitPriceUsdImplied | number | Upbit price converted at the KRW-USDT anchor rate (the USD-side Upbit leg). |
|---|
upbitVolume24hKrw | number | 24h Upbit turnover in KRW (the board's ranking key). |
|---|
upbitTradeAt | string | Upbit last-trade timestamp (ISO). |
|---|
binanceSymbol | string | Binance spot symbol used for the USD leg; null when the token has no Binance USDT pair. |
|---|
binancePriceUsdt | number | — |
|---|
usdtKrwRate | number | Upbit's KRW-USDT price — the FX anchor of the premium (both legs stay on the two verified hosts). |
|---|
premiumPct | number | ((upbitPriceKrw / usdtKrwRate) / binancePriceUsdt - 1) × 100; null when either leg is missing, or when the identity/plausibility guard suppressed the value (see premiumWarning). |
|---|
premiumWarning | string | Why a computable premium was suppressed and published as null: 'different assets share this symbol' (known Upbit/Binance bare-symbol collision) or 'price gap too large; symbols may be different asset… |
|---|
marketWarning | boolean | Upbit market_event.warning flag for this market (a flagged/dislocated market). Surfaced, never by itself a reason to null the premium. |
|---|
priceFluctuations | boolean | Upbit market_event.caution.PRICE_FLUCTUATIONS flag for this market. |
|---|
sourceUrl | string | — |
|---|
binanceUrl | string | — |
|---|
collectedAt | string | — |
|---|
Example call
TERMINAL · $0.02 PER RUN
npx agentcash@latest fetch https://api.ssh.autos/v1/crypto/kimchi-premium -m POST -b '{"tokens": ["BTC", "ETH"]}'
The example values come from the API spec or the actor’s own sample input. Running it is a paid call.
What is and isn’t charged
You pay the call price for
- An answer, including a definitive “not found” or an empty result.
- Confirmed no matches returns records: [] (charged: it is an answer).
Free
- Invalid input (422), busy (503), source failure (502), timeout (504) and calls whose client hung up are never charged.
- Invalid input and source failures are not charged.
Prefer a subscription? Run it on Apify
This data source is a public actor on the Apify Store: Kimchi Premium Tracker. Run it with your Apify account and plan for larger, scheduled or exported runs; it may offer more input options than the per-call endpoint.
Open on Apify ↗
How x402 payment works
- Your client sends the request. The API answers
402 Payment Required with the price and where to pay.
- The client pays from its own wallet: USDC on Base or Solana over x402, or over MPP on Tempo. No account, sign-up or API key.
- The client retries with the payment attached and gets the JSON answer in the same call. You are only charged for answers.
The AgentCash CLI in the example does all three steps for you and pays from your AgentCash wallet. Any x402 or MPP client works the same way.
Some links to Apify are affiliate links. We may earn a commission if you sign up and become a paying customer.