API Reference

분석

콘테스트 성과 지표 조회

분석

콘테스트의 성과 지표와 통계를 조회합니다.


콘테스트 분석 조회

GET/api/v1/contests/:contestId/analytics
Public or Private API Key

특정 콘테스트에 대한 집계된 분석 정보를 반환합니다. 여기에는 참가자 수, 조회수, 보너스 액션 완료 수, 포인트 통계가 포함됩니다.

경로 매개변수

contestIdstring required

고유한 콘테스트 식별자

요청

bash
curl -X GET https://blitzrocket.com/api/v1/contests/clx1abc123/analytics \
  -H "x-api-key: your_api_key_here"

응답

json
{
  "success": true,
  "data": {
    "totalEntries": 1523,
    "confirmedEntries": 1489,
    "disqualifiedEntries": 12,
    "totalViews": 28450,
    "totalBonusCompletions": 4567,
    "points": {
      "total": 45890,
      "average": 30.1,
      "highest": 890
    }
  }
}

응답 필드

totalEntriesnumber

콘테스트 참가자 총 수

confirmedEntriesnumber

이메일 주소가 확인된 참가자 수

disqualifiedEntriesnumber

실격 처리된 참가자 수

totalViewsnumber

콘테스트 페이지 총 조회수

totalBonusCompletionsnumber

모든 참가자의 보너스 액션 완료 총 수

points.totalnumber

모든 참가자의 포인트 총합

points.averagenumber

참가자당 평균 포인트

points.highestnumber

단일 참가자의 최고 포인트

사용 참고사항

  • 분석 데이터는 콘테스트 데이터에서 실시간으로 계산됩니다
  • 이 지표를 사용하여 콘테스트 성과 및 참여도를 추적하세요
  • 리더보드 엔드포인트와 결합하여 종합 대시보드를 구성할 수 있습니다

예제: 분석 대시보드

javascript
async function getContestDashboard(contestId, apiKey) {
  const [analyticsRes, leaderboardRes, contestRes] = await Promise.all([
    fetch(`https://blitzrocket.com/api/v1/contests/${contestId}/analytics`, {
      headers: { "x-api-key": apiKey },
    }),
    fetch(`https://blitzrocket.com/api/v1/contests/${contestId}/leaderboard?limit=5`, {
      headers: { "x-api-key": apiKey },
    }),
    fetch(`https://blitzrocket.com/api/v1/contests/${contestId}`, {
      headers: { "x-api-key": apiKey },
    }),
  ]);

  const [analytics, leaderboard, contest] = await Promise.all([
    analyticsRes.json(),
    leaderboardRes.json(),
    contestRes.json(),
  ]);

  return {
    contest: contest.data,
    analytics: analytics.data,
    topParticipants: leaderboard.data,
    conversionRate:
      analytics.data.totalViews > 0
        ? ((analytics.data.totalEntries / analytics.data.totalViews) * 100).toFixed(1)
        : "0",
  };
}

오류 응답

상태 코드오류설명
400contestId 누락contestId 경로 매개변수가 필요합니다
401잘못된 API 키API 키가 없거나 유효하지 않습니다
404콘테스트를 찾을 수 없음해당 ID의 콘테스트가 존재하지 않습니다