---
title: "List AWS Savings Plans"
method: GET
path: "/ps4commitments/v1/aws/payer-accounts/{payerAccountId}/savings-plans"
tags: ["PS4Commitments AWS"]
---

# List AWS Savings Plans

`GET /ps4commitments/v1/aws/payer-accounts/{payerAccountId}/savings-plans`

Returns the paginated list of Savings Plans for the specified MPA.
Filterable by plan type and state.

## Path parameters

- `payerAccountId` string, required

## Query parameters

- `type` 'compute' | 'ec2_instance' | 'sagemaker' | 'database'
- `status` 'pending_return' | 'returning' | 'active' | 'expired' | 'queued' | 'queued_returning' | 'payment_failed' | 'payment_pending'
- `pageToken` string
- `maxResults` integer

## Headers

- `X-Tenant-Id` string

## Response `200`

Paginated list of Savings Plans.

- object
  - `items` AwsSavingsPlan[], required
    - `commitmentId` string, required — Savings Plan ID (AWS-assigned GUID).
    - `savingsPlanArn` string, nullable — Full ARN of the Savings Plan.
    - `savingsPlanType` 'compute' | 'ec2_instance' | 'sagemaker' | 'database', required
    - `state` 'pending_return' | 'returning' | 'active' | 'expired' | 'queued' | 'queued_returning' | 'payment_failed' | 'payment_pending', required
    - `paymentOption` 'no_upfront' | 'partial_upfront' | 'all_upfront'
    - `termDuration` 'one_year' | 'three_year' — Commitment term length.
    - `commitment` Money
      - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
      - `currency` string, required — ISO 4217 currency code.
    - `upfrontPaymentAmount` Money
      - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
      - `currency` string, required — ISO 4217 currency code.
    - `recurringPaymentAmount` Money
      - `amount` string, required — Decimal monetary amount at ISO 4217 minor-unit precision (string).
      - `currency` string, required — ISO 4217 currency code.
    - `ec2InstanceFamily` string, nullable
    - `region` string, nullable
    - `startTime` string, date-time, nullable
    - `endTime` string, date-time, nullable
    - `lastMonthUtilization` number, double, nullable — Utilization percentage (0–1) in the last full calendar month.
    - `lastMonthSavings` 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.
- `404` — The requested resource does not exist.
- `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.dev/doit/apis/doit-cloud-intelligence/revisions/9416402fc119?raw)
