v1

latestOpenAPI 3.0.12026-07-26152262362.2 KB
PS4Commitments AWS

List 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.

get/ps4commitments/v1/aws/payer-accounts

Query parameters

pageTokenstring

Opaque cursor token returned by a previous list response. Omit to start from the beginning; an empty or absent token in a response means there are no more results. Do not parse it. A structurally invalid cursor returns 400 with code pagination_token_invalid; an expired cursor returns 400 with code pagination_token_expired — restart pagination from the beginning.

maxResultsinteger

Maximum number of items to return. Server may return fewer. Defaults to 50; maximum 500.

Headers

X-Tenant-Idstring
Example:Kp2mN8qL4vR0sT1wX3yZ

Tenant (customer) identifier that conveys the tenant scope for the request (DoiT API Design Standards §15).

Resolution when the header is absent:

  • A key scoped to exactly one tenant resolves to that tenant automatically; the header is optional.
  • A principal that can access more than one tenant (e.g. DoiT-employee keys) must supply the header. Without it the request is rejected with 400 and code tenant_id_required — the server does not guess across tenant scopes.

When the header is present but conflicts with the tenant the key is scoped to, the request is rejected with 400 and code tenant_id_mismatch.

Response

List of Master Payer Accounts.

pageTokenstring nullable
rowCountinteger nullable

Best-effort count for the filtered result set. May be null or omitted for expensive counts.

Example response

{
  "items": [
    {
      "payerAccountId": "123456789012",
      "displayName": "Acme Prod Payer",
      "stats30d": {
        "compute": {
          "esr": 0.187,
          "savings": {
            "currency": "USD"
          }
        },
        "database": {
          "esr": 0.187,
          "savings": {
            "currency": "USD"
          }
        }
      },
      "savingsTotals": {
        "compute": {
          "ytd": {
            "currency": "USD"
          },
          "lifetime": {
            "currency": "USD"
          }
        },
        "database": {
          "ytd": {
            "currency": "USD"
          },
          "lifetime": {
            "currency": "USD"
          }
        }
      },
      "monthlyPotentialSavings": {
        "compute": {
          "currency": "USD"
        },
        "database": {
          "currency": "USD"
        }
      }
    }
  ]
}