Skip to main content
Beta — 이 기능은 현재 베타 버전입니다. API가 변경될 수 있습니다.
본 문서에서는 ChainStream Webhook의 작동 원리, 설정 방법, 모범 사례를 소개하여 실시간 온체인 이벤트 전달 구현을 돕습니다.
Webhook 기능은 모든 사용자가 이용할 수 있습니다.

작동 원리

데이터 흐름

핵심 기능


지원 이벤트 타입

Webhook은 현재 다음 이벤트 타입(채널)을 지원합니다:
추가 이벤트 타입이 개발 중입니다. 계속 지켜봐 주세요!

Webhook 엔드포인트 생성

API 엔드포인트

요청 파라미터

요청 예시

응답 예시


Webhook 알림 형식

Webhook 알림 데이터 구조는 WebSocket 푸시와 일관됩니다.

신규 토큰 생성 (sol.token.created)

필드 설명:

토큰 졸업 (sol.token.migrated)

추가 필드:

Webhook URL 요구사항


보안 검증

Webhook 시크릿 조회

엔드포인트 생성 후, 이 API로 시크릿을 조회합니다:
응답:

서명 검증

각 Webhook 요청에는 요청 출처를 검증하기 위한 서명 헤더가 포함됩니다:

검증 흐름

코드 예시


Webhook 엔드포인트 관리

엔드포인트 목록

쿼리 파라미터:

엔드포인트 상세 조회

엔드포인트 업데이트

엔드포인트 삭제

시크릿 로테이션


모범 사례

✅ 빠른 응답

✅ 멱등성 처리

각 이벤트에는 고유 식별자가 포함됩니다. 서버에서 처리된 이벤트를 기록하세요:

✅ 보안

항상 서명 검증

모든 요청에서 서명 검증

HTTPS 사용

전송 보안 확보

시크릿 정기 로테이션

90일마다 권장

민감한 데이터 보호

민감한 데이터를 로그에 기록하지 않기

✅ 안정성

멱등성 구현

중복 요청 처리

메시지 큐 버퍼

큐를 사용한 비동기 처리

적절한 타임아웃

장시간 블로킹 방지

포괄적 로깅

트러블슈팅을 위한 핵심 정보 기록

FAQ

문제 해결 단계:
  1. URL 접근 가능 여부 확인 — URL이 공용 인터넷에서 도달 가능한지 테스트
  2. HTTPS 확인 — 유효한 SSL 인증서를 사용하고 있는지 확인
  3. 엔드포인트 상태 확인disabledtrue가 아닌지 확인
  4. 채널 확인 — 올바른 이벤트 타입을 구독하고 있는지 확인
이는 재시도 메커니즘 때문일 수 있습니다. 멱등성 처리를 구현하세요:
  1. 고유한 이벤트 식별자 사용 (채널 + 토큰 주소 + 타임스탬프)
  2. 요청 수신 시 이미 처리되었는지 확인
  3. TTL이 있는 캐시 (Redis 등)를 사용하여 저장
  1. ngrok을 사용하여 로컬 서비스 노출
  2. ngrok URL을 가리키는 Webhook 엔드포인트 생성
  3. 실제 이벤트 트리거를 기다리거나 테스트 환경 사용
  4. 로컬 서비스 로그 확인

API 엔드포인트 요약


관련 문서

WebSocket API

실시간 데이터 구독

엔드포인트 API 레퍼런스

전체 API 문서