| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347 |
- {
- "info": {
- "name": "bitForum Crypto API",
- "description": "bitForum 코인 관련 API 엔드포인트 (https://api.bitforum.io)",
- "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
- },
- "variable": [
- {
- "key": "baseUrl",
- "value": "https://localhost:4000",
- "type": "string"
- },
- {
- "key": "symbol",
- "value": "btc",
- "type": "string"
- }
- ],
- "item": [
- {
- "name": "Tickers",
- "description": "현재가 관련 API",
- "item": [
- {
- "name": "전체 Ticker 목록",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/tickers",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "tickers"]
- },
- "description": "등록된 모든 코인의 현재가 목록을 조회합니다."
- }
- },
- {
- "name": "주요 Ticker 목록",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/tickers/featured",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "tickers", "featured"]
- },
- "description": "주요(Featured) 코인의 현재가 목록을 조회합니다."
- }
- },
- {
- "name": "Ticker 상세",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/ticker",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "ticker"]
- },
- "description": "특정 코인의 현재가 상세 정보를 조회합니다.\n\nRoute Params:\n- symbol: 코인 심볼 (예: btc, eth, xrp)"
- }
- }
- ]
- },
- {
- "name": "Candles",
- "description": "캔들(차트) 관련 API",
- "item": [
- {
- "name": "초(Seconds) 캔들",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/candles/seconds?count=200",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "candles", "seconds"],
- "query": [
- {
- "key": "count",
- "value": "200",
- "description": "조회할 캔들 수 (1~200, 기본값: 200)"
- }
- ]
- },
- "description": "특정 코인의 초 단위 캔들 데이터를 조회합니다.\n\n최근 3개월 이내 데이터만 조회 가능합니다."
- }
- },
- {
- "name": "분(Minutes) 캔들",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/candles/minutes/1?count=200",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "candles", "minutes", "1"],
- "query": [
- {
- "key": "count",
- "value": "200",
- "description": "조회할 캔들 수 (1~200, 기본값: 200)"
- }
- ]
- },
- "description": "특정 코인의 분 단위 캔들 데이터를 조회합니다.\n\nRoute Params:\n- unit: 캔들 집계 단위 (1, 3, 5, 10, 15, 30, 60, 240분)"
- }
- },
- {
- "name": "일(Days) 캔들",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/candles/days?count=200",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "candles", "days"],
- "query": [
- {
- "key": "count",
- "value": "200",
- "description": "조회할 캔들 수 (1~200, 기본값: 200)"
- }
- ]
- },
- "description": "특정 코인의 일 단위 캔들 데이터를 조회합니다.\n\n추가 필드: prevClosingPrice, changePrice, changeRate"
- }
- },
- {
- "name": "주(Weeks) 캔들",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/candles/weeks?count=200",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "candles", "weeks"],
- "query": [
- {
- "key": "count",
- "value": "200",
- "description": "조회할 캔들 수 (1~200, 기본값: 200)"
- }
- ]
- },
- "description": "특정 코인의 주 단위 캔들 데이터를 조회합니다.\n\n추가 필드: firstDayOfPeriod (캔들 집계 시작일)"
- }
- },
- {
- "name": "월(Months) 캔들",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/candles/months?count=200",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "candles", "months"],
- "query": [
- {
- "key": "count",
- "value": "200",
- "description": "조회할 캔들 수 (1~200, 기본값: 200)"
- }
- ]
- },
- "description": "특정 코인의 월 단위 캔들 데이터를 조회합니다.\n\n추가 필드: firstDayOfPeriod (캔들 집계 시작일)"
- }
- },
- {
- "name": "연(Years) 캔들",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/candles/years?count=200",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "candles", "years"],
- "query": [
- {
- "key": "count",
- "value": "200",
- "description": "조회할 캔들 수 (1~200, 기본값: 200)"
- }
- ]
- },
- "description": "특정 코인의 연 단위 캔들 데이터를 조회합니다.\n\n추가 필드: firstDayOfPeriod (캔들 집계 시작일)"
- }
- },
- {
- "name": "실시간(Live) 캔들",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/candles/live/m1",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "candles", "live", "m1"]
- },
- "description": "특정 코인의 실시간 캔들 데이터를 조회합니다 (Redis 캐시).\n\nRoute Params:\n- interval: 캔들 간격 (예: m1, m3, m5, m10, m15, m30, m60, m240)"
- }
- }
- ]
- },
- {
- "name": "Trades",
- "description": "체결 내역 관련 API",
- "item": [
- {
- "name": "최근 체결 내역",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/trades?count=50",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "trades"],
- "query": [
- {
- "key": "count",
- "value": "50",
- "description": "조회할 체결 수 (1~100, 기본값: 50)"
- }
- ]
- },
- "description": "특정 코인의 최근 체결 내역을 조회합니다 (Upbit REST API)."
- }
- },
- {
- "name": "실시간(Live) 체결",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/trades/live",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "trades", "live"]
- },
- "description": "특정 코인의 실시간 체결 데이터를 조회합니다 (Redis 캐시, WebSocket 수신 데이터)."
- }
- }
- ]
- },
- {
- "name": "Orderbook",
- "description": "호가 정보 관련 API",
- "item": [
- {
- "name": "호가 정보",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/orderbook",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "orderbook"]
- },
- "description": "특정 코인의 호가(매수/매도) 정보를 조회합니다 (Upbit REST API)."
- }
- },
- {
- "name": "실시간(Live) 호가",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/{{symbol}}/orderbook/live",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "{{symbol}}", "orderbook", "live"]
- },
- "description": "특정 코인의 실시간 호가 데이터를 조회합니다 (Redis 캐시, WebSocket 수신 데이터)."
- }
- }
- ]
- },
- {
- "name": "Markets",
- "description": "마켓 목록 관련 API",
- "item": [
- {
- "name": "전체 마켓 목록",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/api/crypto/markets",
- "host": ["{{baseUrl}}"],
- "path": ["api", "crypto", "markets"]
- },
- "description": "Upbit에 등록된 전체 마켓(거래쌍) 목록을 조회합니다.\n\n마켓 이벤트(유의 종목, 경보) 정보를 포함합니다."
- }
- }
- ]
- },
- {
- "name": "SignalR Hub (WebSocket)",
- "description": "실시간 데이터 Push — SignalR Hub\n\nWebSocket URL: wss://localhost:4000/hubs/crypto\n운영: wss://api.bitforum.io/hubs/crypto\n\n── 연결 방법 (Postman WebSocket 탭) ──\n\n1. Postman > New > WebSocket 선택\n2. URL: wss://localhost:4000/hubs/crypto 입력 후 Connect\n3. 핸드셰이크 메시지 전송:\n {\"protocol\":\"json\",\"version\":1}\\x1e\n4. 구독 메시지 전송 (아래 예시 참고)\n\n── Hub 메서드 (클라이언트 → 서버) ──\n\nSubscribeSymbol: 특정 코인 구독 (ticker/trade/orderbook/candle)\n {\"type\":1,\"target\":\"SubscribeSymbol\",\"arguments\":[\"btc\"]}\\x1e\n\nUnsubscribeSymbol: 특정 코인 구독 해제\n {\"type\":1,\"target\":\"UnsubscribeSymbol\",\"arguments\":[\"btc\"]}\\x1e\n\nSubscribeTickers: 전체 Ticker 목록 구독\n {\"type\":1,\"target\":\"SubscribeTickers\",\"arguments\":[]}\\x1e\n\nUnsubscribeTickers: 전체 Ticker 목록 구독 해제\n {\"type\":1,\"target\":\"UnsubscribeTickers\",\"arguments\":[]}\\x1e\n\n── 수신 이벤트 (서버 → 클라이언트) ──\n\nReceiveTicker: 개별 코인 현재가\nReceiveTickers: 전체 코인 현재가 목록\nReceiveTrade: 체결\nReceiveOrderbook: 호가\nReceiveCandle: 캔들\n\n참고: \\x1e 는 SignalR Record Separator (U+001E) — 메시지 끝 구분자",
- "item": [
- {
- "name": "negotiate (연결 협상)",
- "request": {
- "method": "POST",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/hubs/crypto/negotiate?negotiateVersion=1",
- "host": ["{{baseUrl}}"],
- "path": ["hubs", "crypto", "negotiate"],
- "query": [
- {
- "key": "negotiateVersion",
- "value": "1",
- "description": "SignalR negotiate 프로토콜 버전"
- }
- ]
- },
- "description": "SignalR Hub 연결 전 협상 엔드포인트.\n\n응답으로 connectionId, availableTransports 등을 반환합니다.\nWebSocket 연결 시 자동으로 호출되지만, 직접 테스트도 가능합니다."
- }
- },
- {
- "name": "[WSS] SubscribeSymbol",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/hubs/crypto",
- "host": ["{{baseUrl}}"],
- "path": ["hubs", "crypto"]
- },
- "description": "WebSocket 연결 후 전송할 메시지:\n\n1. 핸드셰이크:\n{\"protocol\":\"json\",\"version\":1}\\x1e\n\n2. 구독:\n{\"type\":1,\"target\":\"SubscribeSymbol\",\"arguments\":[\"btc\"]}\\x1e\n\n구독 후 수신 이벤트:\n- ReceiveTicker: 해당 코인 현재가\n- ReceiveTrade: 해당 코인 체결\n- ReceiveOrderbook: 해당 코인 호가\n- ReceiveCandle: 해당 코인 캔들\n\n구독 해제:\n{\"type\":1,\"target\":\"UnsubscribeSymbol\",\"arguments\":[\"btc\"]}\\x1e\n\n※ Postman WebSocket 탭에서 wss://localhost:4000/hubs/crypto 로 직접 연결하세요."
- }
- },
- {
- "name": "[WSS] SubscribeTickers",
- "request": {
- "method": "GET",
- "header": [],
- "url": {
- "raw": "{{baseUrl}}/hubs/crypto",
- "host": ["{{baseUrl}}"],
- "path": ["hubs", "crypto"]
- },
- "description": "WebSocket 연결 후 전송할 메시지:\n\n1. 핸드셰이크:\n{\"protocol\":\"json\",\"version\":1}\\x1e\n\n2. 전체 Ticker 구독:\n{\"type\":1,\"target\":\"SubscribeTickers\",\"arguments\":[]}\\x1e\n\n구독 후 수신 이벤트:\n- ReceiveTickers: 전체 코인 현재가 목록 (주기적 갱신)\n- ReceiveTicker: 개별 코인 현재가 (변동 시)\n\n구독 해제:\n{\"type\":1,\"target\":\"UnsubscribeTickers\",\"arguments\":[]}\\x1e\n\n※ Postman WebSocket 탭에서 wss://localhost:4000/hubs/crypto 로 직접 연결하세요."
- }
- }
- ]
- }
- ]
- }
|