---
title: "Get an existing affordability calculation for a user"
method: GET
path: "/affordability/{reportId}"
tags: ["affordability"]
---

# Get an existing affordability calculation for a user

`GET /affordability/{reportId}`

Requires **affordability:read** scope.

## Path parameters

- `reportId` string, uuid, required

## Response `200`

Successful Affordability Response

- object
  - `data` Affordability
    - `createdAt` string, required — The timestamp at which the report was generated
    - `id` string, required — The report id
    - `income` object
      - `amountConsistency` number, required — Consistency of monthly income, as a number between 0 and 1
      - `longevity` object, required
        - `consecutiveIncomeMonths` number — Longevity of income detected in number of months
        - `incomePeriodLengthMonths` number — The number of months of transaction history available for the income detection process
      - `predicted` object, required — The predicted monthly income amount
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `regularIncomeDetected` boolean, required — Whether or not regular income was detected
    - `overdraftUseByAccount` object[]
      - `id` string, required — The account id
      - `daysInOverdraft` number, required — The total number of days the account was overdrawn according to the account balance
      - `daysInUnarrangedOverdraft` number — The total number of days the account was in unarranged overdraft according to the account balance. If we were not provided with an overdraft limit by the account provider, we assume any negative balance is unarranged overdraft
      - `earliestBalanceDate` string, required — The earliest available balance date for the account
      - `details` object[]
        - `days` number, required — The number of days the account was overdrawn during the period
        - `start` string, required — The start date of the period
        - `end` string, required — The end date of the period
        - `minimumBalance` object, required — The minimum balance of the account during the period
          - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
          - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
          - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
          - `currency` string, required — The currency of the amount
        - `unarrangedOverdraft` object
          - `days` number, required — The total number of days the account was in unarranged overdraft according to the account balance during the period
          - `details` object[], required
            - `days` number, required — The number of days the account was in unarranged overdraft during the unarranged overdraft period
            - `start` string, required — The start date of the unarranged overdraft period
            - `end` string, required — The end date of the unarranged overdraft period
            - `minimumBalance` object, required — The minimum balance of the account during the unarranged overdraft period
              - …
    - `overview` object
      - `discretionaryExpenses` object, required — The median monthly discretionary spend
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `fixedExpenses` object, required — The median monthly fixed spend
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `flexibleExpenses` object, required — The median monthly flexible spend
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `income` object, required — The median monthly income
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `incomeIncludingTransfers` object — The median monthly income including incoming transfers when incoming transfers exceed outgoing transfers
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `nonDiscretionaryExpenses` object, required — The median monthly non-discretionary spend
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
    - `primaryIncomeAccountId` string — The account id of the detected primary income account
    - `riskIndicators` object
      - `cashWithdrawals` object, required — The median monthly cash withdrawal amount
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `gambling` object, required — The median monthly gambling spend
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `loansOpened` object
        - `byPeriod` object
          - `30days` object
            - `byType` object
              - …
            - `totalByType` object
              - …
          - `90days` object
            - `byType` object
              - …
            - `totalByType` object
              - …
          - `180days` object
            - `byType` object
              - …
            - `totalByType` object
              - …
          - `365days` object
            - `byType` object
              - …
            - `totalByType` object
              - …
      - `loanRepayments` object, required — The median monthly loan repayment amount
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `outgoingTransfers` object, required — The median monthly outgoing transfer amount
        - `value` integer, required — The amount in minor units of the currency, eg. pennies for GBP, negative means money going out of an account, positive means money coming into an account.
        - `majorUnits` integer — The positive major units of the value, based on the values currency, eg. pounds for GBP.
        - `minorUnits` integer — The positive minor units of the value, based on the values currency, eg. pennies for GBP.
        - `currency` string, required — The currency of the amount
      - `returnedDirectDebits` object, required
        - `count` number — The number of times a direct debit payment has been detected as returned
        - `details` object[]
          - `category` string, required — The category of the returned payments
          - `count` number, required — The number of returned payment transactions detected for the specified category and time period
          - `period` object, required
            - `unit` 'days', required — The type of time unit over which the returned payments were detected
            - `value` number, required — The number of time units over which the returned payments were detected
          - `total` object, required
            - `returned` object, required — The total sum of the returned payments for the specified category and time period
              - …
        - `periodMonths` number — The number of months of regular payment history detected
  - `links` Links
    - `next` string, uri — The url to retrieve the next page of results from
    - `prev` string, uri — The url to retrieve the previous page of results from
    - `self` string, uri, required — The url of the current resource(s)
  - `meta` object

## Other responses

- `401` — Unsuccessful Response - Not authorised - Missing authorization header - Invalid access Token
- `403` — Unsuccessful Response - Forbidden - Invalid scopes
- `404` — Unsuccessful Response - Resource Not found

---

[API](https://skmtc.net/moneyhub/apis/moneyhub-data-api.md) · [All operations](https://skmtc.net/moneyhub/apis/moneyhub-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/moneyhub/moneyhub-data-api/versions/f2eb965eb9af/schema)
