Markdown 원본 보기 ↗

시세#

← REST API 가이드

현재가 조회#

GET/v2/tickers

하나 또는 여러 거래쌍의 현재가(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
    }
  ]
}

호가 조회#

GET/v2/orderbook

단일 거래쌍의 호가 정보를 조회합니다.

스키마#

// 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"
      }
    ]
  }
}

최근 체결 내역#

GET/v2/trades

최근 체결 내역을 조회합니다.

스키마#

// 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
    }
  ]
}

캔들스틱 조회#

GET/v2/candles

시세 캔들스틱 정보를 조회합니다.

스키마#

// 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"
    }
  ]
}

거래지원 목록 조회#

GET/v2/currencyPairs

거래지원 거래쌍 목록을 각 거래쌍의 통화 구성 및 주문금액 한도와 함께 조회합니다.

스키마#

// 요청 파라미터 없음

// 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"
    }
  ]
}

호가 정책 조회#

GET/v2/tickSizePolicy

지정한 거래쌍의 호가 정책 및 오더북 모아보기 단위를 조회합니다.

스키마#

// 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"
      ]
    }
  ]
}