Skip to main content
POST
/
v1
/
fortunes
운세 생성
curl --request POST \
  --url https://sajuapi.dev/v1/fortunes \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "profile_id": "<string>",
  "fortune_type": "<string>",
  "fortune_date": "<string>",
  "model": "<string>",
  "include_lucky_items": true,
  "idempotency_key": "<string>"
}
'

Documentation Index

Fetch the complete documentation index at: https://docs.sajuapi.dev/llms.txt

Use this file to discover all available pages before exploring further.

v1 Enterprise API (Coming Soon)이 엔드포인트는 Enterprise 버전에서 제공될 예정입니다. 현재는 v0 API를 사용하세요.
프로필 정보를 기반으로 운세를 생성합니다. 생성된 운세는 자동으로 저장되며, 동일한 조건으로 재요청 시 캐시된 결과가 반환됩니다.
운세 생성에는 AI 모델이 사용되며, 응답 시간은 선택한 모델에 따라 다릅니다. 실시간 응답이 필요한 경우 스트리밍 API를 사용하세요.

Request Body 파라미터

profile_id
string
required
운세를 생성할 프로필의 ID입니다. prf_ 접두사로 시작합니다.
fortune_type
string
required
운세 유형입니다. daily, yearly, monthly 중 하나입니다.
fortune_date
string
운세 날짜입니다. ISO 8601 형식(YYYY-MM-DD)입니다. 기본값은 오늘입니다.
model
string
default:"haiku"
사용할 AI 모델입니다. haiku, sonnet, gpt4o 중 하나입니다.
  • haiku: 빠른 응답, 경제적 (기본값)
  • sonnet: 상세한 분석, 중간 비용
  • gpt4o: 최고 품질, 높은 비용
include_lucky_items
boolean
default:"true"
행운의 아이템(숫자, 색상, 방향 등)을 포함할지 여부입니다.
idempotency_key
string
멱등성 키입니다. 동일한 키로 재요청 시 동일한 결과가 반환됩니다. 최대 64자입니다.

Response

성공

운세 생성에 성공하면 Fortune 객체가 반환됩니다.

실패

상태 코드에러 타입설명
400validation_error요청 데이터가 유효하지 않음
401authentication_errorAPI 키가 유효하지 않음
404not_found프로필을 찾을 수 없음
429rate_limited요청 한도 초과
503service_unavailableAI 모델 서비스 일시 불가

요청 예시

curl -X POST https://api.sajuapi.dev/v1/fortunes \
  -H "X-API-Key: bs_live_xxx" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: req_abc123" \
  -d '{
    "profile_id": "prf_abc123def456",
    "fortune_type": "daily",
    "fortune_date": "2025-01-16",
    "model": "sonnet",
    "include_lucky_items": true
  }'

응답 예시

{
  "id": "ftn_xyz789abc123",
  "profile_id": "prf_abc123def456",
  "fortune_type": "daily",
  "fortune_date": "2025-01-16",
  "model": "sonnet",
  "score": 85,
  "summary": "오늘은 새로운 기회가 찾아오는 날입니다. 오행 중 화(火) 기운이 강해 창의적인 활동에 유리합니다.",
  "categories": {
    "overall": {
      "score": 85,
      "description": "전반적으로 긍정적인 하루가 예상됩니다."
    },
    "wealth": {
      "score": 75,
      "description": "재물운이 안정적입니다. 큰 지출은 피하세요."
    },
    "love": {
      "score": 90,
      "description": "인간관계가 원만합니다. 새로운 만남에 열린 마음을 가지세요."
    },
    "health": {
      "score": 80,
      "description": "건강은 양호하나 과로를 주의하세요."
    },
    "career": {
      "score": 88,
      "description": "업무에서 좋은 성과가 기대됩니다."
    }
  },
  "lucky_items": {
    "number": 7,
    "color": "빨강",
    "direction": "남쪽",
    "time": "오후 2시-4시"
  },
  "advice": "오늘은 적극적으로 행동하되, 중요한 결정은 신중하게 내리세요.",
  "cached": false,
  "generated_at": "2025-01-16T09:00:00Z",
  "latency_ms": 2340
}

Fortune 객체

필드타입설명
idstring운세 ID입니다. ftn_ 접두사로 시작합니다.
profile_idstring연결된 프로필 ID입니다.
fortune_typestring운세 유형입니다. daily, yearly, monthly 중 하나입니다.
fortune_datestring운세 날짜입니다. YYYY-MM-DD 형식입니다.
modelstring사용된 AI 모델입니다.
scoreinteger전체 운세 점수입니다. 0-100 사이의 값입니다.
summarystring운세 요약입니다.
categoriesobject카테고리별 운세입니다.
lucky_itemsobject행운의 아이템입니다. include_lucky_itemsfalsenull입니다.
advicestring오늘의 조언입니다.
cachedboolean캐시된 결과인지 여부입니다.
generated_atstring생성 시간입니다. ISO 8601 형식입니다.
latency_msinteger응답 시간(밀리초)입니다.

캐싱

동일한 profile_id, fortune_type, fortune_date, model 조합으로 요청하면 캐시된 결과가 반환됩니다. 캐시된 응답은 cached: true로 표시되며, latency_ms가 크게 줄어듭니다.
{
  "id": "ftn_xyz789abc123",
  "cached": true,
  "latency_ms": 45
}