대화·질문·제안 적용은 맥스 요금제가 필요합니다(없으면 402). 사용량 보기(
GET /v1/advisor)와 알림(advisor/alerts)은 요금제 없이 됩니다.순서
1
대화 만들기
GET /v1/advisor 의 models[].provider 하나로 대화를 만듭니다. 대화는 플랜마다 여럿입니다.2
질문하기
question 은 1~2000자입니다. 답은 스트림으로 옵니다(아래).3
제안 적용하기
답의
proposals[index] 를 .../messages/{messageId}/proposals/{index}/apply 로 적용합니다. 한 번에 다 적용하려면 apply-all, 마지막 적용을 되돌리려면 undo 입니다.답 스트림
질문 응답은 Vercel AI SDK UI 메시지 스트림 v1 입니다(헤더x-vercel-ai-ui-message-stream: v1). 줄마다 data: {조각} 이고 끝은 data: [DONE] 입니다.
- 없는 대화(404)·빈 질문(400)·이번 달 한도(429)는 스트림이 시작되기 전에 상태 코드로 옵니다.
- 연결을 끊어도 모로는 끝까지 답해 저장합니다. 나중에
GET .../threads/{threadId}로 읽습니다. - 브라우저나 Node 에서는 AI SDK 의
useChat·readUIMessageStream으로 읽을 수 있습니다.
제안
data-exchange 와 대화 보기의 proposals[] 하나는 플랜을 어떻게 바꿀지와 그 결과입니다.
remove·upsert·milestones: 뺄 항목 id, 넣거나 바꿀 항목, 바꿀 이정표(플랜 본문과 같은 모양).finances: 현재 재무 고치기(없으면 null).before·after: 바꾸기 전과 후의finalNetWorth·fiAge·minCash·firstShortfallMonth·retirementNetWorth.- 적용하면 플랜(과 재무)이 저장됩니다. 제안을 받은 뒤 플랜이나 재무가 다른 곳에서 바뀌었으면 412 입니다.
사용량
GET /v1/advisor 의 usedUsd·limitUsd 가 가구의 이번 달 사용량과 한도입니다. 한도를 다 쓰면 다음 달까지 질문이 429 입니다.