Webhooks

회원가입 웹훅

외부 회원가입으로부터 자동으로 콘테스트 참가자 생성

회원가입 웹훅

POST/api/webhooks/signup/:contestId
Webhook Secret

애플리케이션 또는 타사 서비스로부터 회원가입 이벤트를 받아 콘테스트 참가자를 자동으로 생성합니다.

엔드포인트

text
POST https://blitzrocket.com/api/webhooks/signup/:contestId

경로 매개변수

contestIdstring required

고유한 콘테스트 식별자

요청 본문

emailstring required

새 회원가입자의 이메일 주소

namestring

새 회원가입자의 이름 (선택 사항)

phonestring

전화번호 (선택 사항)

referralCodestring

회원가입이 추천된 경우 추천 코드 (선택 사항)

요청 예시

bash
curl -X POST https://blitzrocket.com/api/webhooks/signup/clx1abc123 \
  -H "Content-Type: application/json" \
  -d '{
    "email": "newuser@example.com",
    "name": "New User"
  }'

응답 예시

json
{
  "success": true,
  "data": {
    "entryId": "entry_new789",
    "email": "newuser@example.com",
    "alreadyExists": false,
    "isReferred": false,
    "pointsAwarded": {
      "advocate": 0,
      "friend": 0
    }
  }
}

설정 가이드

  1. Blitz Rocket 대시보드에서 콘테스트의 디자인 페이지로 이동합니다
  2. 콘테스트 설정에서 외부 추적을 활성화합니다
  3. 웹훅 URL을 복사합니다: https://blitzrocket.com/api/webhooks/signup/{your-contest-id}
  4. 외부 플랫폼에서 회원가입 이벤트 발생 시 이 URL로 POST 요청을 보내도록 설정합니다

통합 예시

Shopify 고객 생성

Shopify 웹훅을 customers/create 이벤트에 맞춰 설정하세요:

javascript
// Shopify가 자동으로 보내는 페이로드:
{
  "email": "customer@example.com",
  "first_name": "Jane",
  "last_name": "Doe"
}

맞춤 회원가입 폼

javascript
document.querySelector("#signup-form").addEventListener("submit", async (e) => {
  e.preventDefault();

  const form = new FormData(e.target);
  const email = form.get("email");
  const name = form.get("name");

  // 먼저, 시스템에 사용자 등록
  await registerUser({ email, name });

  // 그 다음, 웹훅을 통해 콘테스트 참가자 생성
  await fetch(
    `https://blitzrocket.com/api/webhooks/signup/${CONTEST_ID}`,
    {
      method: "POST",
      headers: { "Content-Type": "application/json" },
      body: JSON.stringify({ email, name }),
    }
  );
});