---
title: "List AWS payer accounts"
method: GET
path: "/ps4commitments/v1/aws/payer-accounts"
tags: ["PS4Commitments AWS"]
---

# List AWS payer accounts

`GET /ps4commitments/v1/aws/payer-accounts`

Returns all Master Payer Accounts (MPAs) accessible to the authenticated tenant.
Each item includes metadata, trailing 30-day aggregate statistics, precomputed
YTD/lifetime savings totals per SP type so customer-level savings can be aggregated
client-side by summing across payer accounts, and estimated monthly potential
savings (`monthlyPotentialSavings`) per SP type from the latest projection.

## Query parameters

- `pageToken` string
- `maxResults` integer

## Headers

- `X-Tenant-Id` string

## Response `200`

List of Master Payer Accounts.

- object
  - `items` AwsPayerAccount[], required
    - `payerAccountId` string, required — 12-digit AWS Master Payer Account ID.
    - `displayName` string, nullable — Human-readable account alias, if available.
    - `onboardingStatus` AwsOnboardingStatus — PS4C onboarding state grouped by product line. A product line is omitted when it is not onboarded at all.
      - `compute` AwsOnboardingStatusEntry — Per-product-line PS4C onboarding state.
        - `status` 'not_started' | 'onboarding' | 'done' | 'error', required — Current onboarding lifecycle stage for this product line.
        - `onboardingStartedAt` string, date-time, nullable — When PS4C first began tracking commitments for this product line. Used to bound lifetime savings totals and to render onboarding history in the DoiT Console.
      - `database` AwsOnboardingStatusEntry — Per-product-line PS4C onboarding state.
        - `status` 'not_started' | 'onboarding' | 'done' | 'error', required — Current onboarding lifecycle stage for this product line.
        - `onboardingStartedAt` string, date-time, nullable — When PS4C first began tracking commitments for this product line. Used to bound lifetime savings totals and to render onboarding history in the DoiT Console.
    - `savingsPlansSyncTime` string, date-time, nullable — Timestamp of the last successful Savings Plan inventory sync.
    - `stats30d` object — Trailing 30-day aggregate metrics, broken down by SP type.
      - `compute` Stats30dSummary — Minimal 30-day aggregate. Only `esr` and `savings` are persisted at this granularity. Responses are denominated in USD. Used by both AWS payer/linked-account and GCP billing-account list items.
        - `esr` number, double, nullable — Effective Savings Rate over the last 30 days (0–1).
        - `savings` Money
          - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
          - `currency` string, required — ISO 4217 currency code.
      - `database` Stats30dSummary — Minimal 30-day aggregate. Only `esr` and `savings` are persisted at this granularity. Responses are denominated in USD. Used by both AWS payer/linked-account and GCP billing-account list items.
        - `esr` number, double, nullable — Effective Savings Rate over the last 30 days (0–1).
        - `savings` Money
          - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
          - `currency` string, required — ISO 4217 currency code.
    - `savingsTotals` object — Year-to-date and lifetime savings per SP type. Same figures the detail endpoint returns — surfaced on the list item so callers can compute customer-level totals (sum across payer accounts) without an extra round-trip per MPA. Lifetime is bounded by each payer account's PS4C onboarding start.
      - `compute` AwsSavingsTotals — Running savings figures derived server-side from the full monthly stats history (`onDemandCost - costWithSavings` per month, optionally bounded by onboarding start date and start of year).
        - `ytd` Money, required
          - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
          - `currency` string, required — ISO 4217 currency code.
        - `lifetime` Money, required
          - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
          - `currency` string, required — ISO 4217 currency code.
      - `database` AwsSavingsTotals — Running savings figures derived server-side from the full monthly stats history (`onDemandCost - costWithSavings` per month, optionally bounded by onboarding start date and start of year).
        - `ytd` Money, required
          - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
          - `currency` string, required — ISO 4217 currency code.
        - `lifetime` Money, required
          - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
          - `currency` string, required — ISO 4217 currency code.
    - `monthlyPotentialSavings` AwsMonthlyPotentialSavings — Estimated monthly additional savings per SP type, taken from the latest PS4C purchase projection. Unlike `savingsTotals` (realized YTD/lifetime savings), this is a forward-looking estimate of the monthly savings achievable if the recommended commitments were purchased. For linked accounts, the payer-account figure is attributed by each linked account's share of trailing-60-day SP-eligible on-demand cost. A per-SP-type value of `0.00` means the latest projection is missing, expired, or empty. The field is omitted entirely only for accounts that have never had potential savings computed.
      - `compute` Money
        - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
        - `currency` string, required — ISO 4217 currency code.
      - `database` Money
        - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
        - `currency` string, required — ISO 4217 currency code.
  - `pageToken` string, nullable
  - `rowCount` integer, nullable — Best-effort count for the filtered result set. May be null or omitted for expensive counts.

## Other responses

- `400` — Syntactically malformed request, missing required parameter, or unsupported parameter value.
- `401` — Missing or invalid credentials.
- `403` — Authenticated but not authorised to access this customer's PS4C resources.
- `500` — Unexpected server error.
- `503` — Service temporarily unavailable; retry after the indicated delay.

---

[API](https://skmtc.dev/doit/apis/doit-cloud-intelligence.md) · [All operations](https://skmtc.dev/doit/apis/doit-cloud-intelligence/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/doit/doit-cloud-intelligence/revisions/9416402fc119/schema)
