안내 (2026-09-16) — 이 글의 코드 예제는 발행 당시 현행이던 v1 기준입니다. v1 은 2026년 9월 16일부터 레거시 버전이며 2027년 9월 30일까지 지원합니다. 새로 가입하시는 계정에서는 v1 을 이용하실 수 없습니다. 새 연동은 목적별 토픽 엔드포인트 POST /v2/sazu/<topic> 로 작성하세요 — 입력 필드와 응답 모듈 키는 v1 과 같고, modules 파라미터만 없습니다. 옮기는 법은 API 문서의 「v1 (레거시) — v2 로 옮기기」에 있습니다.
사주팔자 API 한 줄 호출
사주팔자 API 는 생년월일과 시간을 받아 연·월·일·시주를 돌려줍니다. 사주 API 의 핵심 엔드포인트는 POST /v1/sazu/calculate 하나입니다.
const res = await fetch('https://api.sazu.app/v1/sazu/calculate', {
method: 'POST',
headers: { 'x-api-key': process.env.SAZU_API_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify({ birthYear: 1990, birthMonth: 3, birthDay: 15, birthHour: 14, isFemale: false }),
})
const { data } = await res.json()
console.log(data.modules.fourPillars) // 연·월·일·시주
타입 안전하게 다루기
TypeScript 라면 응답을 타입으로 감싸 안전하게 처리합니다. 공식 @sazuapp/client SDK 를 쓰면 타입이 함께 제공됩니다.
- 필수 필드: birthYear, birthMonth, birthDay (camelCase, "birth" 접두사)
- 주의: month 는 1~12 — JavaScript Date.getMonth() 의 0~11 을 그대로 보내면 거부됩니다
- 성별(isFemale)은 대운 방향에 영향 — 명시 권장
에러 핸들링
429(한도 초과), 400(필드 오류)를 구분해 처리하세요. 본인 키의 최근 오류는 GET /v1/me/errors 로 조회할 수 있습니다.
다음 단계
모듈을 선택해 응답 크기를 줄이고 싶다면 modules 파라미터를 쓰세요. 전체 모듈과 응답 스키마는 API 문서에 있습니다.
SAZU 의 사주 API 는 신용카드 없이 무료로 시작할 수 있습니다. 합형충파해·격국·용신·12운성 등 분석 모듈을 단일 호출로 제공하며, 응답은 평균 약 100ms 입니다. 무료 한도와 플랜별 요금은 요금 안내에 있습니다. 자세한 사용법은 API 문서에서 확인하세요.