FOR BUSINESS · 판정 엔진 API

화면이 아니라 판정값을 드립니다

결혼정보·웨딩·이사·부동산·앱 서비스가 자기 화면 안에서 사주·궁합·택일·일진을 쓸 수 있게, 정통 명리 판정 엔진을 REST API로 제공합니다. 응답은 JSON 하나입니다.

FREE TRIAL

체험 키 받기

월 1,000회 무료입니다. 승인 절차 없이 바로 나옵니다 — 계약 전에 실제로 붙여 보시고 판단하십시오. 한도를 넘으면 그냥 멈추고, 추가로 청구되는 금액은 없습니다.

왜 이 API인가

사주 API는 이미 여럿 있습니다. 우리가 다른 점은 세 가지입니다.

같은 입력이면 언제나 같은 결과

판정은 규칙 엔진이 하고 AI는 설명만 합니다. 생성형 AI에 물으면 같은 사람에게 매번 다른 답이 나와 남의 서비스에 넣을 수가 없습니다. 우리 응답은 재현됩니다 — 고객 문의가 들어와도 그때 그 값을 다시 뽑을 수 있습니다.

자평진전 기준 · 신살류 배제

원진살·귀문관살·삼재처럼 고전 근거가 약한 요소를 판정에 넣지 않습니다. 겁을 줘서 파는 구조를 만들지 않으므로, 도입하시는 서비스의 신뢰도를 깎지 않습니다.

개인정보를 저장하지 않습니다

생년월일시는 계산에만 쓰고 흘려보냅니다. 우리가 남기는 것은 호출 건수뿐입니다. 귀사가 개인정보 처리위탁 부담을 지지 않아도 됩니다.

시작하기

발급받은 키를 x-klm-key 헤더에 넣어 호출합니다. 그게 전부입니다.

REQUEST
# 연결 확인 — 쿼터에 세지 않습니다
curl -H "x-klm-key: klm_live_..." \
     https://klifemap.ai/api/v1/ping
RESPONSE
{ "ok": true, "version": "v1", "engine": "taekil-2.0.0", "at": "2026-08-01T03:16:29.867Z" }
공통 규칙. 모든 요청은 HTTPS · Content-Type: application/json입니다. 생년월일시는 calendar로 양력·음력·윤달을 구분하고, 시간을 모르면 timeUnknown: true를 보냅니다(정오로 계산하고 시주 판정을 빼지 않습니다). longitude를 주면 진태양시 보정에 씁니다(기본 127.0 — 한국 표준).

엔드포인트

네 가지입니다. 응답 필드는 더해질 수는 있어도 빠지거나 이름이 바뀌지 않습니다 — 바꿔야 할 일이 생기면 /api/v2를 새로 냅니다.

POST/api/v1/saju 명식·격국·용신·대운을 한 번에. 사람 한 명의 기본 판정입니다.
REQUEST
{
  "year": 1990, "month": 5, "day": 15,
  "hour": 10, "minute": 0,
  "gender": "male",           // male | female (필수)
  "calendar": "solar",        // solar | lunar | lunar_leap
  "timeUnknown": false,       // 시간 모름
  "longitude": 127.0,        // 진태양시 보정
  "daeunCount": 9             // 대운 몇 구간 (1~12)
}
RESPONSE (요약)
{
  "ok": true, "version": "v1", "engine": "taekil-2.0.0",
  "result": {
    "items": { /* 명식 4궁 — 천간·지지·오행·음양 */ },
    "gyeok": {
      "name": "칠살격", "sipsung": "편관",
      "sunyong": false,            // true=순용(4길격) · false=역용(4흉격)
      "fromMonthBranch": {  }, "exposed": false
    },
    "yongsin": {
      "element": "수",           // 용신
      "helper": "금",            // 희신
      "avoid": "토",             // 기신
      "eokbu": "수", "johu": {  }, "rule": "…"
    },
    "strength": { "level": "신약(身弱)", "isStrong": false, "relation": {  } },
    "daeun": { "forward": true, "startAge": 7, "list": [  ] },
    "relations": { /* 원국 형충회합 */ },
    "pagyeok": { /* 파격 여부 */ },
    "sinsal": [ /* 12신살 — 일지 기준 4개 */ ]
  }
}
필드 이름은 고정입니다. 우리 엔진 내부 이름을 그대로 내보내지 않고, 밖으로 나가는 이름을 따로 정해 두었습니다. 엔진을 고쳐도 이 이름들은 바뀌지 않습니다 — 바꿔야 할 일이 생기면 /api/v2를 새로 냅니다. 순용·역용은 반대로 읽습니다: 순용(정관·정재·편재·정인·편인·식신)은 격이 뚜렷할수록 좋고, 역용(편관·상관·비견·겁재)은 상신이 함께 갖춰졌는지를 봐야 합니다.
POST/api/v1/gunghap 두 사람의 궁합. 점수와 함께 그 점수가 나온 근거를 함께 냅니다.
REQUEST
{
  "personA": { "year": 1990, "month": 5, "day": 15, "hour": 10, "gender": "male" },
  "personB": { "year": 1992, "month": 8, "day": 3,  "hour": 14, "gender": "female" }
}
RESPONSE (요약)
{
  "ok": true,
  "result": {
    "totalScore": 66,
    "axes":  { /* 일간·일지·용신·합충 등 축별 점수 */ },
    "notes": [ "일지끼리 육합을 이루어…" ]
  }
}
POST/api/v1/taekil 한 달치를 한 번에 채점하고 상위 5일을 함께 냅니다. 웨딩·이사·개업 서비스가 가장 많이 씁니다.
REQUEST
{
  "birth": { "year": 1990, "month": 5, "day": 15, "hour": 10, "gender": "male" },
  "year": 2026, "month": 9,
  "category": "결혼"   // 결혼 | 이사 | 개업 | 계약 | 수술 …
}
RESPONSE (요약)
{
  "ok": true,
  "best": [
    { "date": "2026-09-08", "score": 100, "tier": "대길", "reasons": [ "일진이 일지와 육합을…" ] },
    { "date": "2026-09-20", "score": 80,  "tier": "길",   "reasons": [  ] }
  ],
  "results": [ /* 그 달 전체 일자별 점수 */ ]
}
POST/api/v1/ilzin 그날의 간지. 생년월일시를 함께 주면 「그 사람에게」 오늘이 어떤 날인지까지 냅니다.
REQUEST
{
  "date": "2026-08-15",
  "birth": { "year": 1990, "month": 5, "day": 15, "hour": 10, "gender": "male" }  // 선택
}
RESPONSE (요약)
{
  "ok": true,
  "result": {
    "date": "2026-08-15",
    "dayGan": { "ko": "신", "hanja": "辛", "oheng": "금" },
    "dayJi":  { "ko": "유", "hanja": "酉", "oheng": "금" },
    "forPerson": { /* 용신 대비 오늘의 작용 — birth를 준 경우에만 */ }
  }
}
GET/api/v1/usage 이번 달 호출 수와 남은 한도. 청구서와 같은 숫자를 언제든 직접 확인하실 수 있습니다.
RESPONSE
{
  "ok": true,
  "quota": { "monthly": 30000, "used": 4127, "ratePerMin": 120 },
  "daily": [ { "day": "2026-08-01", "endpoint": "taekil", "calls": 312, "errors": 0 } ]
}

오류 응답

왜 실패했는지를 코드로 구분해 드립니다. 「안 되는데 이유를 모르겠다」가 지원 비용의 대부분이기 때문입니다.

HTTPerror뜻과 조치
400invalid_inputfields에 어떤 값이 잘못됐는지 그대로 들어 있습니다.
401missing_key / invalid_key헤더 이름은 x-klm-key입니다(x-api-key가 아닙니다).
402quota_exceeded이번 달 한도 소진. 플랜을 올리시면 즉시 풀립니다.
403client_suspended계약 상태가 활성이 아닙니다.
429rate_limited분당 한도 초과. Retry-After 헤더만큼 기다린 뒤 재시도하십시오.
500engine_error우리 쪽 문제입니다. 재시도하셔도 같으면 알려주십시오.

요금

월 기본료에 호출 수가 포함되고, 넘는 만큼만 건당으로 더해집니다. 표시 금액은 공급가(부가세 별도)입니다.

택일은 한 달치가 1건입니다. 30일을 계산해도 호출 한 번으로 셉니다 — 예산을 짜실 수 있어야 하기 때문입니다. 전용 인스턴스·SLA·전문가모드 판정 개방·온프레미스 설치는 Enterprise에서 협의합니다.

도입 절차

1 · 문의

어떤 서비스에 어떻게 쓰실지 알려주십시오. 예상 호출량을 함께 주시면 플랜을 맞춰 제안드립니다.

2 · 체험 키

월 1,000회 무료 키를 바로 드립니다. 계약 전에 실제로 붙여 보시고 판단하십시오.

3 · 계약·운영

세금계산서를 발행합니다. 사용량은 언제든 /usage로 직접 확인하실 수 있습니다.