가상자산 정보를 조회합니다.
// 요청 파라미터 없음
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = Array<{
/** 자산 심볼. Example: "btc" */
name: string;
/** 자산 이름. Example: "Bitcoin" */
fullName: string;
/** (삭제 예정) 출금 가능 상태. `networkList` 하단의 `withdrawalStatus` 필드를 참조해주세요. */
withdrawalStatus?: string;
/** (삭제 예정) 입금 가능 상태. `networkList` 하단의 `depositStatus` 필드를 참조해주세요. */
depositStatus?: string;
/** (삭제 예정) 입금에 필요한 컨펌 수. `networkList` 하단의 `confirmationCount` 필드를 참조해주세요. */
confirmationCount?: string;
/** (삭제 예정) 출금 수수료. `networkList` 하단의 `withdrawalTxFee` 필드를 참조해주세요. */
withdrawalTxFee?: string;
/** (삭제 예정) 최소 출금 수량. `networkList` 하단의 `withdrawalMinAmount` 필드를 참조해주세요. */
withdrawalMinAmount?: string;
/** 요청 1회당 최대 출금 수량. Example: "10" */
withdrawalMaxAmountPerRequest: string;
/** 기본 네트워크 심볼. Example: "BTC" */
defaultNetwork?: string;
/** 지원하는 블록체인 네트워크 목록 (법정통화에는 표시되지 않음) */
networkList?: Array<{
/** 네트워크 심볼. Example: "ETH" */
name: string;
/** 네트워크 이름. Example: "Ethereum" */
fullName: string;
/**
* 출금 가능 상태.
* 값:
*/
withdrawalStatus:
| "launched" // 출금 가능
| "stopped" // 출금 중단
;
/**
* 입금 가능 상태
* 값:
*/
depositStatus:
| "launched" // 입금 가능
| "stopped" // 입금 중단
;
/** 입금에 필요한 컨펌 수. Example: 3 */
confirmationCount: number;
/** 출금 수수료. Example: "0.0001" */
withdrawalTxFee: string;
/** 최소 출금 수량. Example: "0.00000001" */
withdrawalMinAmount: string;
/** 출금 수량의 소숫점 자릿수. Example: 8 */
withdrawalPrecision: number;
/** 2차 주소 존재 여부 */
hasSecondaryAddr: boolean;
/** 컨트랙트 주소. Example: "0x6b3595068778dd592e39a122f4f5a5cf09c90fe2" */
contractAddress?: string;
/** 블록체인 탐색기 주소. Example: "https://etherscan.io/address/" */
addressExplorerUrl?: string;
}>;
}>;
curl 'https://api.korbit.co.kr/v2/currencies'
{
"success": true,
"data": [
{
"name": "krw",
"fullName": "Won",
"withdrawalMaxAmountPerRequest": "5000000000",
"depositStatus": "launched",
"withdrawalStatus": "launched",
"withdrawalTxFee": "1000",
"withdrawalMinAmount": "1000"
},
{
"name": "btc",
"fullName": "Bitcoin",
"withdrawalMaxAmountPerRequest": "120",
"defaultNetwork": "BTC",
"networkList": [
{
"name": "BTC",
"fullName": "Bitcoin",
"depositStatus": "launched",
"withdrawalStatus": "launched",
"confirmationCount": 3,
"withdrawalTxFee": "0.0008",
"withdrawalMinAmount": "0.0001",
"withdrawalPrecision": 8,
"hasSecondaryAddr": false,
"addressExplorerUrl": "https://www.blockchain.com/ko/btc/address/"
}
],
"depositStatus": "launched",
"withdrawalStatus": "launched",
"confirmationCount": "3",
"withdrawalTxFee": "0.0008",
"withdrawalMinAmount": "0.0001"
},
{
"name": "eth",
"fullName": "Ethereum",
"withdrawalMaxAmountPerRequest": "2000",
"defaultNetwork": "ETH",
"networkList": [
{
"name": "ETH",
"fullName": "Ethereum",
"depositStatus": "launched",
"withdrawalStatus": "launched",
"confirmationCount": 45,
"withdrawalTxFee": "0.005",
"withdrawalMinAmount": "0.0001",
"withdrawalPrecision": 8,
"hasSecondaryAddr": false,
"addressExplorerUrl": "https://etherscan.io/address/"
},
{
"name": "BASE",
"fullName": "BASE",
"depositStatus": "launched",
"withdrawalStatus": "launched",
"confirmationCount": 1,
"withdrawalTxFee": "0.001",
"withdrawalMinAmount": "0.0001",
"withdrawalPrecision": 8,
"hasSecondaryAddr": false,
"addressExplorerUrl": "https://basescan.org/address/"
}
],
"depositStatus": "launched",
"withdrawalStatus": "launched",
"confirmationCount": "45",
"withdrawalTxFee": "0.005",
"withdrawalMinAmount": "0.0001"
},
{
"name": "usdt",
"fullName": "Tether",
"withdrawalMaxAmountPerRequest": "500000",
"defaultNetwork": "TRX",
"networkList": [
{
"name": "TRX",
"fullName": "Tron",
"depositStatus": "launched",
"withdrawalStatus": "launched",
"confirmationCount": 1,
"withdrawalTxFee": "1",
"withdrawalMinAmount": "1",
"withdrawalPrecision": 6,
"hasSecondaryAddr": false,
"addressExplorerUrl": "https://tronscan.org/#/address/"
}
],
"depositStatus": "launched",
"withdrawalStatus": "launched",
"confirmationCount": "1",
"withdrawalTxFee": "1",
"withdrawalMinAmount": "1"
}
]
}
서버 시각을 조회합니다.
// 요청 파라미터 없음
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = {
/** 서버 시각(timestamp). Example: 1700000000000 */
time: number;
};
curl 'https://api.korbit.co.kr/v2/time'
{
"success": true,
"data": {
"time": 1700000000000
}
}
현재 회원 계정에 적용되는 거래수수료율을 조회합니다.
필요 권한: readOrders
// URL 쿼리 파라미터
type RequestQuery = {
/** 어카운트 시퀀스 번호. 기본값은 1 (메인 어카운트). Example: 1 */
accountSeq?: number;
/** 조회하려는 거래쌍을 입력합니다. 여러 거래쌍을 입력하려면 콤마(,)로 구분해 입력합니다. 입력하지 않으면 코빗에서 거래 가능한 모든 거래쌍의 정보를 응답합니다. Example: "btc_krw,eth_krw" */
symbol?: string;
};
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = Array<{
/** 거래쌍. Example: "btc_krw" */
symbol: string;
/** 매수 주문시 수수료 수취 자산. Example: "btc" */
buyFeeCurrency: string;
/** 매도 주문시 수수료 수취 자산. Example: "krw" */
sellFeeCurrency: string;
/** 최대 수취 가능 수수료율. `buyFeeCurrency`가 해당 거래쌍의 `quoteCurrency`와 같은 경우, 매수 주문 시 `수량*가격*maxFeeRate`만큼의 상대자산이 추가로 필요하며(사용 중 금액으로 전환) 주문이 체결되면 체결시 수수료율에 따라 정산됩니다. Example: "0.0015" */
maxFeeRate: string;
/** 테이커(Taker) 주문 체결시 수수료율. Example: "0.0015" */
takerFeeRate: string;
/** 메이커(Maker) 주문 체결시 수수료율. Example: "0" */
makerFeeRate: string;
}>;
curl -H X-KAPI-KEY=API키 'https://api.korbit.co.kr/v2/tradingFeePolicy?timestamp=시각&signature=서명'
{
"success": true,
"data": [
{
"symbol": "btc_krw",
"buyFeeCurrency": "btc",
"sellFeeCurrency": "krw",
"maxFeeRate": "0.002",
"takerFeeRate": "0.0015",
"makerFeeRate": "0"
},
{
"symbol": "eth_krw",
"buyFeeCurrency": "eth",
"sellFeeCurrency": "krw",
"maxFeeRate": "0.002",
"takerFeeRate": "0.0015",
"makerFeeRate": "0"
},
{
"symbol": "etc_krw",
"buyFeeCurrency": "krw",
"sellFeeCurrency": "krw",
"maxFeeRate": "0.002",
"takerFeeRate": "0.0015",
"makerFeeRate": "0"
},
{
"symbol": "xrp_krw",
"buyFeeCurrency": "krw",
"sellFeeCurrency": "krw",
"maxFeeRate": "0.002",
"takerFeeRate": "0.0015",
"makerFeeRate": "0"
}
]
}
현재 사용중인 API 키의 정보를 조회합니다.
필요 권한: 없음
// 요청 파라미터 없음
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = {
/** API 키 ID. Example: "FFSoRME97Sr7WBCMZJ_NO5Bj8MZ03EyArRzqyr1NKIA" */
apiKey: string;
/** 이 API 키를 소유한 사용자의 UUID. Example: "f81d4fae-7dec-11d0-a765-00a0c91e6bf6" */
userUuid?: string;
/** 키 종류 */
type: "hmac-sha256" | "ed25519";
/** ed25519 공개 키. 키 종류가 `ed25519`일 때만 출력됩니다. Example: -----BEGIN PUBLIC KEY-----
MCowBQYDK2VwAyEAk+Yp3C31eFwoky+zyRNB6rAv/lgULTeghxTQpqwQHzM=
-----END PUBLIC KEY-----
*/
publicKey?: string;
/** API 키의 권한 목록 */
permissions: Array<"readBalances" | "readOrders" | "writeOrders" | "readDeposits" | "writeDeposits" | "readWithdrawals" | "writeWithdrawals">;
/** API 키의 접속 가능한 IP 주소 목록. 여러 개의 주소는 콤마(`,`)로 구분합니다. Example: "1.2.3.4,5.6.7.8" */
whitelist: string;
/** API 키 만료 시각. Example: 1700000000000 */
expiration: number;
/** API 키 상태 */
status:
| "activated" // 활성화
| "deactivated" // 비활성화
;
/** API 키 라벨. Example: "test key" */
label?: string;
/** 이 API 키로 접근 가능한 어카운트 시퀀스 번호 목록. */
allowedAccountSeqs: number[];
/** API 키 생성 시각. Example: 1700000000000 */
createdAt: number;
};
curl -H X-KAPI-KEY=API키 'https://api.korbit.co.kr/v2/currentKeyInfo?timestamp=시각&signature=서명'
{
"success": true,
"data": {
"apiKey": "FFSoRME97Sr7WBCMZJ_NO5Bj8MZ03EyArRzqyr1NKIA",
"userUuid": "f81d4fae-7dec-11d0-a765-00a0c91e6bf6",
"type": "ed25519",
"publicKey": "-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEAk+Yp3C31eFwoky+zyRNB6rAv/lgULTeghxTQpqwQHzM=\n-----END PUBLIC KEY-----\n",
"permissions": ["readBalances", "readOrders"],
"whitelist": "1.2.3.4,5.6.7.8",
"allowedAccountSeqs": [1, 2],
"expiration": 1700000000000,
"status": "activated",
"label": "test key",
"createdAt": 1700000000000
}
}
최근 공지사항 20건을 최신순으로 조회합니다.
일반 코빗 공지와 오픈API(개발자센터) 공지를 함께 포함합니다.
// 요청 파라미터 없음
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = Array<{
/** 공지 제목. Example: "공지사항 제목 샘플" */
title: string;
/** 공지 작성 시각 (ms). Example: 1700000000000 */
createdAt: number;
/** 공지 최종 수정 시각 (ms). 일부 공지에는 없을 수 있습니다. Example: 1700000000000 */
updatedAt?: number;
/** 공지 상세 페이지 URL. Example: "https://www.korbit.co.kr/notice/detail/?noticeId=4Oy9q6ALiM7jABzMt32ul5" */
url: string;
}>;
curl 'https://api.korbit.co.kr/v2/notices'
{
"success": true,
"data": [
{
"title": "공지사항 제목 샘플",
"createdAt": 1700000000000,
"updatedAt": 1700000000000,
"url": "https://www.korbit.co.kr/notice/detail/?noticeId=4Oy9q6ALiM7jABzMt32ul5"
}
]
}
거래쌍별 시장경보제 발동현황을 조회합니다. 현재 경보가 발동된 거래쌍만 반환됩니다.
// 요청 파라미터 없음
// JSON 응답 (`{ success: true, data }` 형태로 래핑되며, 아래는 `data` 필드의 구조)
type Response = Array<{
/** 거래쌍 심볼. Example: "btc_krw" */
symbol: string;
/** 해당 거래쌍에 발동된 시장경보 목록 */
alerts: Array<{
/** 경보 유형. Example: "price" */
type: string;
/** 경보 유형 (한글). Example: "가격 급등락" */
typeKorean?: string;
/** 경보 단계 (일부 경보 유형에만 존재). Example: "danger" */
level?: string;
/** 경보 단계 (한글). Example: "투자위험" */
levelKorean?: string;
/** 경보 시작 시각 (ms). Example: 1700000000000 */
startAt?: number;
/** 경보 종료 시각 (ms). Example: 1700000000000 */
endAt?: number;
/** 경보 기준/측정 값 (소수 문자열, 의미는 `type`에 따라 다름). Example: "250.5" */
value?: string;
}>;
}>;
curl 'https://api.korbit.co.kr/v2/marketAlerts'
{
"success": true,
"data": [
{
"symbol": "btc_krw",
"alerts": [
{
"type": "price",
"typeKorean": "가격 급등락",
"level": "danger",
"levelKorean": "투자위험",
"startAt": 1700000000000,
"endAt": 1700000000000,
"value": "250.5"
},
{
"type": "limit_buy_range",
"typeKorean": "주문가격 제한",
"startAt": 1700000000000,
"endAt": 1700000000000,
"value": "145000000"
}
]
}
]
}