Slug로 가격 히스토리 조회
GET
/v1/markets/slug/:slug/prices-historyPublic마켓 slug를 사용하여 특정 아웃컴의 과거 가격 데이터를 조회합니다. 이 엔드포인트는 slug 기반 채널 이름(market:{slug}:price)을 제공하는 WebSocket 신호와 함께 사용하도록 설계되었습니다.
#경로 파라미터
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
slug | string | 예 | 마켓 URL slug (예: will-btc-hit-100k) |
#쿼리 파라미터
| 파라미터 | 타입 | 필수 | 기본값 | 설명 |
|---|---|---|---|---|
outcomeId | string | 예 | — | 가격 히스토리를 조회할 아웃컴 ID |
startTs | number | 아니오 | 1주 전 | 시작 Unix 타임스탬프 (초) |
endTs | number | 아니오 | 현재 시간 | 종료 Unix 타임스탬프 (초) |
fidelity | number | 아니오 | 1 | 데이터 정밀도 (분). 값이 클수록 데이터 포인트가 적어집니다. |
#응답
{
"history": [
{ "t": 1710000000, "p": 0.67 },
{ "t": 1710000300, "p": 0.68 },
{ "t": 1710000600, "p": 0.665 }
]
}#응답 필드
| 필드 | 타입 | 설명 |
|---|---|---|
history | array | 가격 포인트 배열 |
history[].t | number | Unix 타임스탬프 (초) |
history[].p | number | 해당 간격의 종가 (0-1) |
#WebSocket 연동
이 엔드포인트는 market:{slug}:price 채널에서 WebSocket 신호를 수신한 후 호출하도록 설계되었습니다:
// 1. WebSocket 채널 구독
socket.emit('join', { channel: 'market:will-btc-hit-100k:price' });
// 2. 신호 수신 시 동일한 slug로 업데이트된 데이터 조회
socket.on('market:will-btc-hit-100k:price', async (data) => {
const response = await fetch('/v1/markets/slug/will-btc-hit-100k/prices-history?outcomeId=outcome-uuid-1');
const priceHistory = await response.json();
});#오류
| 상태 코드 | 설명 |
|---|---|
400 | outcomeId 누락 또는 아웃컴이 해당 마켓에 속하지 않음 |
404 | 마켓 또는 아웃컴을 찾을 수 없음 |
#예제
#최근 24시간, 5분 정밀도
curl "https://api.conviction.bet/v1/markets/slug/will-btc-hit-100k/prices-history?outcomeId=outcome-uuid-1&startTs=1709913600&endTs=1710000000&fidelity=5"#최근 1주, 기본 정밀도
curl "https://api.conviction.bet/v1/markets/slug/will-btc-hit-100k/prices-history?outcomeId=outcome-uuid-1"이 페이지가 도움이 되었나요?