メインコンテンツへスキップ

list-aws-payer-accounts

dci list-aws-payer-accounts [flags]

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.

Flags

--page-token: (string)

--max-results: (integer default:50)

Responses

200 (application/json)

List of Master Payer Accounts.

{
"type": "object",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"payerAccountId"
],
"properties": {
"payerAccountId": {
"type": "string",
"description": "12-digit AWS Master Payer Account ID.",
"example": "123456789012"
},
"displayName": {
"type": "string",
"description": "Human-readable account alias, if available.",
"nullable": true,
"example": "Acme Prod Payer"
},
"onboardingStatus": {
"allOf": [
{
"type": "object",
"description": "PS4C onboarding state grouped by product line. A product line is omitted when it\nis not onboarded at all.\n",
"properties": {
"compute": {
"type": "object",
"required": [
"status"
],
"description": "Per-product-line PS4C onboarding state.",
"properties": {
"status": {
"type": "string",
"description": "Current onboarding lifecycle stage for this product line.",
"enum": [
"not_started",
"onboarding",
"done",
"error"
]
},
"onboardingStartedAt": {
"type": "string",
"format": "date-time",
"description": "When PS4C first began tracking commitments for this product line. Used to bound\nlifetime savings totals and to render onboarding history in the DoiT Console.\n",
"nullable": true
}
}
},
"database": {
"type": "object",
"required": [
"status"
],
"description": "Per-product-line PS4C onboarding state.",
"properties": {
"status": {
"type": "string",
"description": "Current onboarding lifecycle stage for this product line.",
"enum": [
"not_started",
"onboarding",
"done",
"error"
]
},
"onboardingStartedAt": {
"type": "string",
"format": "date-time",
"description": "When PS4C first began tracking commitments for this product line. Used to bound\nlifetime savings totals and to render onboarding history in the DoiT Console.\n",
"nullable": true
}
}
}
}
}
],
"description": "Per-product-line PS4C onboarding state for this MPA."
},
"savingsPlansSyncTime": {
"type": "string",
"format": "date-time",
"description": "Timestamp of the last successful Savings Plan inventory sync.",
"nullable": true
},
"stats30d": {
"type": "object",
"description": "Trailing 30-day aggregate metrics, broken down by SP type.",
"properties": {
"compute": {
"type": "object",
"description": "Minimal 30-day aggregate. Only `esr` and `savings` are persisted at this granularity.\nResponses are denominated in USD. Used by both AWS payer/linked-account and GCP\nbilling-account list items.\n",
"properties": {
"esr": {
"type": "number",
"format": "double",
"description": "Effective Savings Rate over the last 30 days (0–1).",
"nullable": true,
"example": 0.187
},
"savings": {
"allOf": [
{
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "string",
"pattern": "^-?(0|[1-9]\\d*)(\\.\\d+)?$",
"description": "Decimal monetary amount at ISO 4217 minor-unit precision (string)."
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code.",
"example": "USD"
}
}
}
],
"description": "Realized savings amount over the last 30 days."
}
}
},
"database": {
"type": "object",
"description": "Minimal 30-day aggregate. Only `esr` and `savings` are persisted at this granularity.\nResponses are denominated in USD. Used by both AWS payer/linked-account and GCP\nbilling-account list items.\n",
"properties": {
"esr": {
"type": "number",
"format": "double",
"description": "Effective Savings Rate over the last 30 days (0–1).",
"nullable": true,
"example": 0.187
},
"savings": {
"allOf": [
{
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "string",
"pattern": "^-?(0|[1-9]\\d*)(\\.\\d+)?$",
"description": "Decimal monetary amount at ISO 4217 minor-unit precision (string)."
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code.",
"example": "USD"
}
}
}
],
"description": "Realized savings amount over the last 30 days."
}
}
}
}
},
"savingsTotals": {
"type": "object",
"description": "Year-to-date and lifetime savings per SP type. Same figures the detail\nendpoint returns — surfaced on the list item so callers can compute\ncustomer-level totals (sum across payer accounts) without an extra\nround-trip per MPA. Lifetime is bounded by each payer account's PS4C\nonboarding start.\n",
"properties": {
"compute": {
"type": "object",
"required": [
"ytd",
"lifetime"
],
"description": "Running savings figures derived server-side from the full monthly stats history\n(`onDemandCost - costWithSavings` per month, optionally bounded by onboarding\nstart date and start of year).\n",
"properties": {
"ytd": {
"allOf": [
{
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "string",
"pattern": "^-?(0|[1-9]\\d*)(\\.\\d+)?$",
"description": "Decimal monetary amount at ISO 4217 minor-unit precision (string)."
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code.",
"example": "USD"
}
}
}
],
"description": "Year-to-date realized savings."
},
"lifetime": {
"allOf": [
{
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "string",
"pattern": "^-?(0|[1-9]\\d*)(\\.\\d+)?$",
"description": "Decimal monetary amount at ISO 4217 minor-unit precision (string)."
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code.",
"example": "USD"
}
}
}
],
"description": "Lifetime realized savings since onboarding."
}
}
},
"database": {
"type": "object",
"required": [
"ytd",
"lifetime"
],
"description": "Running savings figures derived server-side from the full monthly stats history\n(`onDemandCost - costWithSavings` per month, optionally bounded by onboarding\nstart date and start of year).\n",
"properties": {
"ytd": {
"allOf": [
{
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "string",
"pattern": "^-?(0|[1-9]\\d*)(\\.\\d+)?$",
"description": "Decimal monetary amount at ISO 4217 minor-unit precision (string)."
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code.",
"example": "USD"
}
}
}
],
"description": "Year-to-date realized savings."
},
"lifetime": {
"allOf": [
{
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "string",
"pattern": "^-?(0|[1-9]\\d*)(\\.\\d+)?$",
"description": "Decimal monetary amount at ISO 4217 minor-unit precision (string)."
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code.",
"example": "USD"
}
}
}
],
"description": "Lifetime realized savings since onboarding."
}
}
}
}
},
"monthlyPotentialSavings": {
"allOf": [
{
"type": "object",
"description": "Estimated monthly additional savings per SP type, taken from the latest PS4C purchase\nprojection. Unlike `savingsTotals` (realized YTD/lifetime savings), this is a forward-looking\nestimate of the monthly savings achievable if the recommended commitments were purchased. For\nlinked accounts, the payer-account figure is attributed by each linked account's share of\ntrailing-60-day SP-eligible on-demand cost. A per-SP-type value of `0.00` means the latest\nprojection is missing, expired, or empty. The field is omitted entirely only for accounts that\nhave never had potential savings computed.\n",
"properties": {
"compute": {
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "string",
"pattern": "^-?(0|[1-9]\\d*)(\\.\\d+)?$",
"description": "Decimal monetary amount at ISO 4217 minor-unit precision (string)."
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code.",
"example": "USD"
}
}
},
"database": {
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "string",
"pattern": "^-?(0|[1-9]\\d*)(\\.\\d+)?$",
"description": "Decimal monetary amount at ISO 4217 minor-unit precision (string)."
},
"currency": {
"type": "string",
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code.",
"example": "USD"
}
}
}
}
}
],
"description": "Estimated monthly additional savings per SP type for this payer account."
}
}
}
},
"pageToken": {
"type": "string",
"nullable": true
},
"rowCount": {
"type": "integer",
"format": "int64",
"description": "Best-effort count for the filtered result set. May be null or omitted for expensive counts.",
"nullable": true
}
}
}

400 (application/problem+json)

Syntactically malformed request, missing required parameter, or unsupported parameter value.

{
"type": "object",
"required": [
"type",
"title",
"status",
"detail",
"instance",
"code",
"retryable"
],
"additionalProperties": true,
"description": "RFC 9457 Problem Details — standard DoiT error envelope for all non-2xx responses.",
"properties": {
"type": {
"type": "string",
"format": "uri",
"example": "https://developer.doit.com/errors/not_found"
},
"title": {
"type": "string",
"example": "Resource not found"
},
"status": {
"type": "integer",
"example": 404
},
"detail": {
"type": "string",
"example": "customer not found"
},
"instance": {
"type": "string",
"format": "uri",
"example": "https://api.doit.com/requests/req_01HX9P2KQVJ8Z3M4T5N6V7W8Y9"
},
"code": {
"type": "string",
"pattern": "^([a-z][a-z0-9_]*|[a-z][a-z0-9]*(?:-[a-z0-9]+)*\\.[a-z][a-z0-9_]*)$",
"example": "not_found"
},
"retryable": {
"type": "boolean",
"example": false
},
"details": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue"
],
"properties": {
"issue": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]*$"
},
"field": {
"type": "string"
}
},
"additionalProperties": true
}
},
"docsUrl": {
"type": "string",
"format": "uri"
}
}
}

401 (application/problem+json)

Missing or invalid credentials.

{
"type": "object",
"required": [
"type",
"title",
"status",
"detail",
"instance",
"code",
"retryable"
],
"additionalProperties": true,
"description": "RFC 9457 Problem Details — standard DoiT error envelope for all non-2xx responses.",
"properties": {
"type": {
"type": "string",
"format": "uri",
"example": "https://developer.doit.com/errors/not_found"
},
"title": {
"type": "string",
"example": "Resource not found"
},
"status": {
"type": "integer",
"example": 404
},
"detail": {
"type": "string",
"example": "customer not found"
},
"instance": {
"type": "string",
"format": "uri",
"example": "https://api.doit.com/requests/req_01HX9P2KQVJ8Z3M4T5N6V7W8Y9"
},
"code": {
"type": "string",
"pattern": "^([a-z][a-z0-9_]*|[a-z][a-z0-9]*(?:-[a-z0-9]+)*\\.[a-z][a-z0-9_]*)$",
"example": "not_found"
},
"retryable": {
"type": "boolean",
"example": false
},
"details": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue"
],
"properties": {
"issue": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]*$"
},
"field": {
"type": "string"
}
},
"additionalProperties": true
}
},
"docsUrl": {
"type": "string",
"format": "uri"
}
}
}

403 (application/problem+json)

Authenticated but not authorised to access this customer's PS4C resources.

{
"type": "object",
"required": [
"type",
"title",
"status",
"detail",
"instance",
"code",
"retryable"
],
"additionalProperties": true,
"description": "RFC 9457 Problem Details — standard DoiT error envelope for all non-2xx responses.",
"properties": {
"type": {
"type": "string",
"format": "uri",
"example": "https://developer.doit.com/errors/not_found"
},
"title": {
"type": "string",
"example": "Resource not found"
},
"status": {
"type": "integer",
"example": 404
},
"detail": {
"type": "string",
"example": "customer not found"
},
"instance": {
"type": "string",
"format": "uri",
"example": "https://api.doit.com/requests/req_01HX9P2KQVJ8Z3M4T5N6V7W8Y9"
},
"code": {
"type": "string",
"pattern": "^([a-z][a-z0-9_]*|[a-z][a-z0-9]*(?:-[a-z0-9]+)*\\.[a-z][a-z0-9_]*)$",
"example": "not_found"
},
"retryable": {
"type": "boolean",
"example": false
},
"details": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue"
],
"properties": {
"issue": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]*$"
},
"field": {
"type": "string"
}
},
"additionalProperties": true
}
},
"docsUrl": {
"type": "string",
"format": "uri"
}
}
}

500 (application/problem+json)

Unexpected server error.

{
"type": "object",
"required": [
"type",
"title",
"status",
"detail",
"instance",
"code",
"retryable"
],
"additionalProperties": true,
"description": "RFC 9457 Problem Details — standard DoiT error envelope for all non-2xx responses.",
"properties": {
"type": {
"type": "string",
"format": "uri",
"example": "https://developer.doit.com/errors/not_found"
},
"title": {
"type": "string",
"example": "Resource not found"
},
"status": {
"type": "integer",
"example": 404
},
"detail": {
"type": "string",
"example": "customer not found"
},
"instance": {
"type": "string",
"format": "uri",
"example": "https://api.doit.com/requests/req_01HX9P2KQVJ8Z3M4T5N6V7W8Y9"
},
"code": {
"type": "string",
"pattern": "^([a-z][a-z0-9_]*|[a-z][a-z0-9]*(?:-[a-z0-9]+)*\\.[a-z][a-z0-9_]*)$",
"example": "not_found"
},
"retryable": {
"type": "boolean",
"example": false
},
"details": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue"
],
"properties": {
"issue": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]*$"
},
"field": {
"type": "string"
}
},
"additionalProperties": true
}
},
"docsUrl": {
"type": "string",
"format": "uri"
}
}
}

503 (application/problem+json)

Service temporarily unavailable; retry after the indicated delay.

{
"type": "object",
"required": [
"type",
"title",
"status",
"detail",
"instance",
"code",
"retryable"
],
"additionalProperties": true,
"description": "RFC 9457 Problem Details — standard DoiT error envelope for all non-2xx responses.",
"properties": {
"type": {
"type": "string",
"format": "uri",
"example": "https://developer.doit.com/errors/not_found"
},
"title": {
"type": "string",
"example": "Resource not found"
},
"status": {
"type": "integer",
"example": 404
},
"detail": {
"type": "string",
"example": "customer not found"
},
"instance": {
"type": "string",
"format": "uri",
"example": "https://api.doit.com/requests/req_01HX9P2KQVJ8Z3M4T5N6V7W8Y9"
},
"code": {
"type": "string",
"pattern": "^([a-z][a-z0-9_]*|[a-z][a-z0-9]*(?:-[a-z0-9]+)*\\.[a-z][a-z0-9_]*)$",
"example": "not_found"
},
"retryable": {
"type": "boolean",
"example": false
},
"details": {
"type": "array",
"items": {
"type": "object",
"required": [
"issue"
],
"properties": {
"issue": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]*$"
},
"field": {
"type": "string"
}
},
"additionalProperties": true
}
},
"docsUrl": {
"type": "string",
"format": "uri"
}
}
}

Aliases: list-aws-payer-accounts, listawspayeraccounts