하나 또는 여러 거래쌍의 현재가(Ticker) 정보를 조회합니다.
// URL 쿼리 파라미터
type RequestQuery = {
/**
* 조회하고자 하는 거래쌍의 심볼을 입력합니다. 여러 거래쌍을 한 번에 조회하고자 한다면 콤마(,)로 구분해 입력합니다.
* 입력하지 않으면 코빗에서 거래 가능한 모든 거래쌍의 현재가 정보를 응답합니다.
* Example: "btc_krw,eth_krw"
*/
symbol?: string;
};
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = Array<{
/** 거래쌍. Example: "btc_krw" */
symbol: string;
/** 최근 24시간 시가. Example: "361922.23" */
open: string;
/** 최근 24시간 고가. Example: "361922.23" */
high: string;
/** 최근 24시간 저가. Example: "361922.23" */
low: string;
/** 최근 24시간 종가. Example: "361922.23" */
close: string;
/** 직전 24시간 종가. Example: "261922.23" */
prevClose: string;
/** 직전 종가 대비 가격 변화량. `close - prevClose`으로 계산합니다. Example: "100000" */
priceChange: string;
/** 직전 종가 대비 가격 변화율(단위: %). `100 * (close - prevClose) / prevClose`으로 계산합니다. Example: "38.18" */
priceChangePercent: string;
/** 최근 24시간 거래량. 단위는 기준자산(base currency, `symbol`의 첫 번째 항목)입니다. Example: "100" */
volume: string;
/** 최근 24시간 거래대금. 단위는 상대자산(quote currency, `symbol`의 두 번째 항목)입니다. Example: "1000000000" */
quoteVolume: string;
/** 매수 1호가. Example: "5000" */
bestBidPrice: string;
/** 매도 1호가. Example: "6000" */
bestAskPrice: string;
/** 마지막 체결 시각 (단위: Unix Timestamp (밀리초)). Example: 1700000000000 */
lastTradedAt: number;
}>;
curl 'https://api.korbit.co.kr/v2/tickers?symbol=btc_krw,eth_krw'
{
"success": true,
"data": [
{
"symbol": "btc_krw",
"open": "77060000",
"high": "79650000",
"low": "76550000",
"close": "77136000",
"prevClose": "77060000",
"priceChange": "76000",
"priceChangePercent": "0.1",
"volume": "48.73739983",
"quoteVolume": "3785149733.32633",
"bestBidPrice": "77136000",
"bestAskPrice": "77193000",
"lastTradedAt": 1725525721041
},
{
"symbol": "eth_krw",
"open": "3259000",
"high": "3370000",
"low": "3222000",
"close": "3250000",
"prevClose": "3259000",
"priceChange": "-9000",
"priceChangePercent": "-0.28",
"volume": "161.99278306",
"quoteVolume": "532827941.01581",
"bestBidPrice": "3251000",
"bestAskPrice": "3254000",
"lastTradedAt": 1725525545630
}
]
}
단일 거래쌍의 호가 정보를 조회합니다.
// URL 쿼리 파라미터
type RequestQuery = {
/** 대상 거래쌍의 심볼. Example: "btc_krw" */
symbol: string;
/** 오더북 모아보기 단위. 모아보기 단위는 호가 정책 조회 API로 확인할 수 있습니다. 입력하지 않을 경우 모아보기를 적용하지 않습니다. Example: "1000" */
level?: string;
};
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = {
/** 호가 정보의 기준 시각 (단위: Unix Timestamp (밀리초)). Example: 1700000000000 */
timestamp: number;
/** 매수 호가 정보 (호가 내림차순 정렬) */
bids: Array<{
/** 매수호가. Example: "250000" */
price: string;
/** 매수잔량. Example: "10" */
qty: string;
/** 호가 금액 (상대자산). 오더북 모아보기를 사용하는 경우에만 세팅되며, 모아보기를 사용하지 않는 경우 `price * qty`로 계산할 수 있습니다. Example: "2500000" */
amt?: string;
}>;
/** 매도 호가 정보 (호가 오름차순 정렬) */
asks: Array<{
/** 매도호가. Example: "250000" */
price: string;
/** 매도잔량. Example: "10" */
qty: string;
/** 호가 금액 (상대자산). 오더북 모아보기를 사용하는 경우에만 세팅되며, 모아보기를 사용하지 않는 경우 `price * qty`로 계산할 수 있습니다. Example: "2500000" */
amt?: string;
}>;
};
curl 'https://api.korbit.co.kr/v2/orderbook?symbol=btc_krw'
{
"success": true,
"data": {
"timestamp": 1708057740895,
"bids": [
{
"price": "73303000",
"qty": "0.00898326"
},
{
"price": "73302000",
"qty": "0.00790837"
},
{
"price": "73301000",
"qty": "0.00843099"
},
{
"price": "73300000",
"qty": "0.00054024"
},
{
"price": "73299000",
"qty": "0.00663446"
}
],
"asks": [
{
"price": "73304000",
"qty": "0.00985212"
},
{
"price": "73305000",
"qty": "0.00367505"
},
{
"price": "73306000",
"qty": "0.0096254"
},
{
"price": "73307000",
"qty": "0.00502544"
},
{
"price": "73308000",
"qty": "0.00640584"
}
]
}
}
최근 체결 내역을 조회합니다.
// URL 쿼리 파라미터
type RequestQuery = {
/** 대상 거래쌍의 심볼. Example: "btc_krw" */
symbol: string;
/** 최대 조회 건수 (범위: 1 - 500). Example: 100 */
limit?: number;
};
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = Array<{
/** 체결 시각 (단위: Unix Timestamp (밀리초)). Example: 1700000000000 */
timestamp: number;
/** 체결 가격. Example: "250000" */
price: string;
/** 체결량. Example: "10" */
qty: string;
/** 테이커(Taker)가 매수자인지 여부. Example: true */
isBuyerTaker: boolean;
/** 거래 체결 ID (각 거래쌍마다 생성된 개별 거래 체결 건의 ID). 거래쌍별로 단조 증가하지만 연속성은 보장되지 않습니다. Example: 1234 */
tradeId: number;
}>;
curl 'https://api.korbit.co.kr/v2/trades?symbol=btc_krw&limit=4'
{
"success": true,
"data": [
{
"timestamp": 1708057271149,
"price": "70507000",
"qty": "0.00981535",
"isBuyerTaker": false,
"tradeId": 1004
},
{
"timestamp": 1708057271035,
"price": "70508000",
"qty": "0.00682475",
"isBuyerTaker": false,
"tradeId": 1003
},
{
"timestamp": 1708057270922,
"price": "70509000",
"qty": "0.00844147",
"isBuyerTaker": false,
"tradeId": 1002
},
{
"timestamp": 1708057270809,
"price": "70510000",
"qty": "0.00553963",
"isBuyerTaker": false,
"tradeId": 1001
}
]
}
시세 캔들스틱 정보를 조회합니다.
// URL 쿼리 파라미터
type RequestQuery = {
/** 대상 거래쌍의 심볼. Example: "btc_krw" */
symbol: string;
/**
* 각 캔들 주기(단위)
* 허용되는 값:
*/
interval:
| "1" // 1분
| "5" // 5분
| "15" // 15분
| "30" // 30분
| "60" // 1시간
| "240" // 4시간
| "1D" // 1일
| "1W" // 1주
;
/** 조회 시작 시각(timestamp). 입력하지 않으면 거래쌍 상장 시점부터 조회합니다. Example: 1600000000000 */
start?: number;
/** 조회 종료 시각(timestamp). `start`보다 큰 값을 입력해야 합니다. 입력하지 않으면 현재 시점까지 조회합니다. Example: 1700000000000 */
end?: number;
/** 최대 조회 건수 (범위: 1 - 200). Example: 100 */
limit: number;
};
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = Array<{
/** 캔들 시작 시각(timestamp). Example: 1619244573612 */
timestamp: number;
/** 시가. Example: "361922.23" */
open: string;
/** 고가. Example: "361922.23" */
high: string;
/** 저가. Example: "361922.23" */
low: string;
/** 종가. Example: "361922.23" */
close: string;
/** 거래량 (기준자산). Example: "100" */
volume: string;
}>;
curl 'https://api.korbit.co.kr/v2/candles?symbol=btc_krw&interval=60&limit=5&end=1700000000000'
{
"success": true,
"data": [
{
"timestamp": 1708041600000,
"open": "71211000",
"high": "9999990000",
"low": "300000",
"close": "71392000",
"volume": "1.932320026577213946"
},
{
"timestamp": 1708045200000,
"open": "73510000",
"high": "74605000",
"low": "300000",
"close": "72315000",
"volume": "2.418698679231323743"
},
{
"timestamp": 1708048800000,
"open": "72315000",
"high": "9999990000",
"low": "300000",
"close": "72380000",
"volume": "1.947520219976227299"
},
{
"timestamp": 1708052400000,
"open": "70267000",
"high": "74777000",
"low": "300000",
"close": "74049000",
"volume": "2.254855048982521506"
},
{
"timestamp": 1708056000000,
"open": "68304000",
"high": "74834000",
"low": "68241000",
"close": "74825000",
"volume": "0.630193755379195341"
}
]
}
거래지원 거래쌍 목록을 각 거래쌍의 통화 구성 및 주문금액 한도와 함께 조회합니다.
// 요청 파라미터 없음
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = Array<{
/** 거래쌍 심볼. Example: "btc_krw" */
symbol: string;
/** 거래 가능 상태 */
status:
| "launched" // 거래 가능
| "stopped" // 거래 중단
;
/** 해당 거래쌍의 기준자산. 거래 대상이 되는 자산이며 `symbol`의 첫 번째 항목입니다. Example: "btc" */
baseCurrency: string;
/** 해당 거래쌍의 상대자산. 가격이 표시되는 자산이며 `symbol`의 두 번째 항목입니다. `price`, `amt`, `minOrderValue`, `maxOrderValue`가 모두 이 자산 단위입니다. Example: "krw" */
quoteCurrency: string;
/** 해당 거래쌍의 최소 주문금액(`quoteCurrency` 단위). 수량*가격(시장가 매수는 `amt`)이 이 값보다 작은 주문은 `ORDER_VALUE_TOO_SMALL`로 거절됩니다. 이 거래쌍이 최소 주문금액을 공개하지 않으면 생략되며, 이때는 클라이언트 검증을 건너뛰고 서버 판단에 맡기세요. 생략되었다고 해서 주문금액에 제한이 없다는 뜻은 아닙니다. Example: "5000" */
minOrderValue?: string;
/** 해당 거래쌍의 최대 주문금액(`quoteCurrency` 단위). 이 값을 초과하는 주문은 `ORDER_VALUE_TOO_LARGE`로 거절됩니다. 이 거래쌍이 최대 주문금액을 공개하지 않으면 생략되며, 이때는 클라이언트 검증을 건너뛰고 서버 판단에 맡기세요. 생략되었다고 해서 주문금액에 제한이 없다는 뜻은 아닙니다. Example: "1000000000" */
maxOrderValue?: string;
}>;
curl 'https://api.korbit.co.kr/v2/currencyPairs'
{
"success": true,
"data": [
{
"symbol": "btc_krw",
"status": "launched",
"baseCurrency": "btc",
"quoteCurrency": "krw",
"minOrderValue": "5000",
"maxOrderValue": "1000000000"
},
{
"symbol": "eth_krw",
"status": "launched",
"baseCurrency": "eth",
"quoteCurrency": "krw",
"minOrderValue": "5000",
"maxOrderValue": "1000000000"
},
{
"symbol": "xrp_krw",
"status": "stopped",
"baseCurrency": "xrp",
"quoteCurrency": "krw",
"minOrderValue": "5000",
"maxOrderValue": "1000000000"
}
]
}
지정한 거래쌍의 호가 정책 및 오더북 모아보기 단위를 조회합니다.
// URL 쿼리 파라미터
type RequestQuery = {
/** 거래쌍 심볼. Example: "xrp_krw" */
symbol: string;
};
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = Array<{
/** 거래쌍 심볼. Example: "xrp_krw" */
symbol: string;
/**
* 호가 정책 목록.
* 배열에서 `주문가격 >= priceGte` 조건을 만족하는 항목 중 가장 큰 `priceGte` 값을 가진 항목의 `tickSize`를 사용합니다.
* 예: 주문가격이 150원이라면, `priceGte`가 "100"인 항목의 `tickSize`를 사용합니다.
*/
tickSizePolicy: Array<{
/** 가격 범위 시작값 (이상). Example: "0.1" */
priceGte: string;
/** 해당 가격 범위의 호가 단위. Example: "0.0001" */
tickSize: string;
}>;
/** 오더북 모아보기 단위 목록 */
orderbookLevels: string[];
}>;
curl 'https://api.korbit.co.kr/v2/tickSizePolicy?symbol=xrp_krw'
{
"success": true,
"data": [
{
"symbol": "xrp_krw",
"tickSizePolicy": [
{
"priceGte": "0",
"tickSize": "0.0001"
},
{
"priceGte": "1",
"tickSize": "0.001"
},
{
"priceGte": "10",
"tickSize": "0.01"
},
{
"priceGte": "100",
"tickSize": "0.1"
},
{
"priceGte": "1000",
"tickSize": "1"
},
{
"priceGte": "5000",
"tickSize": "5"
},
{
"priceGte": "10000",
"tickSize": "10"
},
{
"priceGte": "50000",
"tickSize": "50"
},
{
"priceGte": "100000",
"tickSize": "100"
},
{
"priceGte": "500000",
"tickSize": "500"
},
{
"priceGte": "1000000",
"tickSize": "1000"
}
],
"orderbookLevels": [
"10",
"100",
"1000"
]
}
]
}