> ## Documentation Index
> Fetch the complete documentation index at: https://developer.moneyone.in/llms.txt
> Use this file to discover all available pages before exploring further.

# API Only Flow

> Direct API integration flow for custom implementations

```mermaid theme={null}
flowchart TD
    Start([Start]) --> GetToken[Call SDK Init API]
    GetToken --> ReceiveToken[Get Session Token]
    ReceiveToken --> GetData1[Call User Data API]

    GetData1 --> CheckData{Data Present?}

    CheckData -->|No| GetWebRD[Get Onboarding URL]
    GetWebRD --> Onboarding[User Onboarding]
    Onboarding --> AARedirect[AA Consent Flow]
    AARedirect --> Portfolio[Client Dashboard]

    CheckData -->|Yes| Portfolio
    Portfolio --> GetData2[Fetch User Data]
    GetData2 --> CheckStatus[Check Data Status]
    CheckStatus --> End([End])
```

<Steps>
  <Step title="Retrieve the session token">
    * The session token is retrieved from the [SDK Init API](/pfm/sdk-init-api) which can be accessed using client credentials
  </Step>

  <Step title="Call the user/data API">
    * Use the session token to call the [User Data API](/pfm/user-data-api)
    * The User Data API will show if the user is a new user or an existing one
    * If the user is new, Onboarding WebRD can be initialized
    * If the user is an existing one, the client's portfolio will be shown
  </Step>

  <Step title="Onboarding Flow">
    * The PFM WebRD is initialized using the onboarding URL received from the [Onboarding Init API](/pfm/onboarding-init-api)
    * On the initialisation of the onboarding flow, the user can go through the desired AA journey
  </Step>

  <Step title="Client Portfolio Page">
    * User completes the AA flow, approves/rejects consent, and returns to client's configured redirection url (mostly the dashboard)
    * The [User Data API](/pfm/user-data-api) is called and the user's data and the status of data is provided
  </Step>
</Steps>
