수파사주 API MYEONGRI ENGINE

유틸리티

리딩 외 엔드포인트

아래 호출은 분당 한도에 세지 않고 월 포함량도 쓰지 않습니다. Free 가 분당 1회라, 카탈로그를 한 번 부르는 것만으로 첫 리딩이 막히면 연동 자체가 되지 않기 때문입니다.

GET /v2/saju/topics

지금 쓸 수 있는 토픽과 각 토픽의 모듈 구성. 모듈이 준비되는 대로 토픽이 열리므로, 하드코딩하지 말고 이 목록을 읽으십시오.

curl https://api.supasaju.com/v2/saju/topics -H "x-api-key: $SAJU_API_KEY"

GET /v2/saju/samples

Free 키가 전체 모듈 구성으로 받을 수 있는 샘플 프로필 5종. 입력값을 그대로 복사해 쓰시면 됩니다.

curl https://api.supasaju.com/v2/saju/samples -H "x-api-key: $SAJU_API_KEY"

GET /v2/saju/modules

지금 인도된 모듈 목록. meta.pendingModules 에 담기는 것과 같은 기준입니다.

GET /v2/cities

진태양시 보정에 쓰는 출생 도시 목록과 경도. 정적 파일로도 받을 수 있습니다 — birth-cities.json.

목록에 없는 도시는 거절합니다.

전에는 서울로 대신 계산하고 경고만 냈는데, 그러면 다른 사람의 사주가 200 으로 나갑니다 — 부르는 쪽이 timezone.cityResolved 를 검사한다는 것을 알아야만 안전했습니다. 지금은 400 UNSUPPORTED_CITY 로 거절하고 어느 값이 문제인지 알려 드립니다.

모르는 도시는 시간대조차 알 수 없어, 표준시 관행 모드라 해도 같은 답이라고 말할 수 없습니다. 그래서 대신 계산하지 않습니다.

GET /v2/cities/resolve?q=…

도시 하나가 유효한지만 묻습니다. 월 포함량과 분당 한도에 세지 않습니다 — 출생정보를 저장하는 화면에서 타이핑할 때마다 부르셔도 됩니다.

응답의 fuzzy: true 는 부분 일치로 찾았다는 뜻입니다 (“서울특별시 강남구” → “서울”). wouldReject: true 면 그 값으로 계산을 부르면 400 이 납니다.

{
  "success": true,
  "data": {
    "query": "서울특별시 강남구",
    "resolved": true,
    "fuzzy": true,
    "city": {
      "id": "seoul",
      "ko": "서울",
      "en": "Seoul",
      "region": "korea",
      "utcOffsetMinutes": 540,
      "longitude": 126.978
    },
    "wouldReject": false
  },
  "meta": {}
}

GET /v2/me

키 상태와 잔여 한도. 한도는 모든 응답 헤더로도 오므로, 보통 따로 부를 필요가 없습니다.

curl https://api.supasaju.com/v2/me -H "x-api-key: $SAJU_API_KEY"

GET /v2/me/errors

이 키에서 최근에 난 에러. 연동 중 무엇이 막혔는지 확인할 때 씁니다.

판정 기준

어느 전통을 따르는지와 무엇으로 검증했는지를 적어 두었습니다. 키가 필요 없습니다 — 판정 기준 보기.


에러 코드 → · OpenAPI 3.1 →