---
title: "Get financial summary"
method: POST
path: "/api/onboarding/agent/start"
---

# Get financial summary

`POST /api/onboarding/agent/start`

## Request

- Base URL: `https://app.rightmoney.com`
- URL: `https://app.rightmoney.com/api/onboarding/agent/start`
- Auth: API key in header `X-RM-Agent-Key`

Returns the user's financial summary with transactions classified into the three-bucket system. If the user hasn't connected their bank or classified transactions yet, returns the appropriate next step.

## Request body

- UserIdBody
  - `userId` string, uuid, required: The user's unique identifier

## Response `200`

Onboarding state or financial summary

- StartResponse
  - `status` 'needs_plaid' | 'needs_classification' | 'ready' | 'confirmed', required: Current state of the onboarding flow
  - `message` string
  - `link_url` string, uri: URL to direct the user to (when status is needs_plaid)
  - `summary` FinancialSummary: Complete financial breakdown in the three-bucket system
    - `income` object
      - `monthly_total` number
      - `sources` object[]
        - `pattern` string
        - `monthly_amount` number
        - `frequency` 'monthly' | 'biweekly' | 'weekly' | 'quarterly' | 'semi-annual' | 'annual' | 'one-time'
        - `is_recurring` boolean
    - `bills` object
      - `monthly_total` number
      - `percentage` number
      - `items` object[]
        - `pattern` string
        - `monthly_amount` number
        - `frequency` string
        - `is_recurring` boolean
        - `bill_group` 'housing' | 'utilities' | 'insurance' | 'subscriptions' | 'transportation' | 'debt' | 'medical' | 'childcare' | 'education' | 'null', nullable
    - `lifestyle` object
      - `monthly_total` number
      - `percentage` number
    - `freedom` object
      - `monthly_total` number
      - `percentage` number
    - `months_of_freedom` number: Total balance divided by monthly freedom amount
    - `total_balance` number
    - `top_recurring` object[]
      - `pattern` string
      - `bucket` 'bills' | 'lifestyle' | 'income' | 'ignore'
      - `monthly_amount` number
      - `frequency` string
      - `bill_group` string, nullable
    - `unconfirmed_count` integer
    - `classification_confidence` number

## Other responses

- `400`: Invalid request
- `401`: Invalid or missing API key
- `503`: Database not configured

---

[API](https://skmtc.dev/rightmoney/apis/right-money-agent-api.md) · [All operations](https://skmtc.dev/rightmoney/apis/right-money-agent-api/llms.txt) · [OpenAPI document](https://skmtc.dev/rightmoney/apis/right-money-agent-api/revisions/244b5180a5ff?raw)
