Skip to main content

list-billing-transfer-reseller-accounts-with-tenants

dci list-billing-transfer-reseller-accounts-with-tenants [flags]

Lists every reseller PMA node belonging to the calling reseller, each with the end-customer tenants connected under it — the reseller-tier analog of GET /billingtransfer/v1/programmanagementaccounts. region, iamStatus and lastRefreshTime are inherited from the parent DPMA root; the reseller node itself carries no IAM/region metadata of its own.

Flags

--include-revoked: (boolean default:false)

Responses

200 (application/json)

OK

{
"type": "object",
"additionalProperties": false,
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"resellerPmaAccountId",
"dpmaId",
"handshakeId",
"handshakeState",
"status",
"region",
"iamStatus",
"createdAt",
"handshakeStatus",
"tenants"
],
"properties": {
"resellerPmaAccountId": {
"type": "string",
"description": "12-digit AWS account ID of the reseller's program management account.",
"example": "123456789012"
},
"dpmaId": {
"type": "string"
},
"handshakeId": {
"type": "string"
},
"handshakeState": {
"type": "string",
"description": "AWS Organizations Handshake `State` value, lowercased.",
"enum": [
"requested",
"open",
"canceled",
"accepted",
"declined",
"expired"
]
},
"status": {
"type": "string",
"enum": [
"handshake_pending",
"cur_export_waiting",
"active",
"declined",
"canceled",
"expired"
]
},
"region": {
"type": "string",
"description": "Inherited from the parent DPMA root; the reseller node itself carries no region metadata."
},
"iamStatus": {
"type": "string",
"description": "Inherited from the parent DPMA root; the reseller node itself carries no IAM metadata."
},
"lastRefreshTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Inherited from the parent DPMA root. `null` if never refreshed."
},
"effectiveTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "When the handshake reached a terminal state. `null` until then."
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"handshakeStatus": {
"type": "object",
"description": "Per-AWS-Organizations-handshake-state counts across all tenants mapped to a PMA.",
"additionalProperties": false,
"required": [
"total",
"requested",
"open",
"accepted",
"declined",
"canceled",
"expired"
],
"properties": {
"total": {
"type": "integer"
},
"requested": {
"type": "integer"
},
"open": {
"type": "integer"
},
"accepted": {
"type": "integer"
},
"declined": {
"type": "integer"
},
"canceled": {
"type": "integer"
},
"expired": {
"type": "integer"
}
}
},
"tenants": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"ecAccountId",
"ecCustomerId",
"status",
"handshakeState",
"billSourceType",
"createdAt"
],
"properties": {
"ecAccountId": {
"type": "string",
"description": "12-digit AWS account ID of the end-customer account.",
"example": "123456789012"
},
"ecCustomerId": {
"type": "string",
"description": "DoiT customer ID the end-customer account is mapped to."
},
"status": {
"type": "string",
"enum": [
"pending",
"cur_export_waiting",
"active",
"canceled",
"declined",
"expired",
"revoked"
]
},
"handshakeState": {
"type": "string",
"description": "AWS Organizations Handshake `State` value, lowercased.",
"enum": [
"requested",
"open",
"canceled",
"accepted",
"declined",
"expired"
]
},
"billSourceType": {
"type": "string"
},
"effectiveTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "When the handshake reached a terminal state. `null` until then."
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"lastRefreshTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "When this mapping's status was last refreshed. `null` if never refreshed."
}
}
}
}
}
}
}
}
}

400 (application/json)

Bad Request - The server cannot process the request, often due to a malformed request.

{
"type": "object",
"description": "Standard error response structure.",
"properties": {
"error": {
"type": "string",
"description": "Detailed error message."
}
}
}

401 (application/json)

Unauthorized - Invalid API key.

{
"type": "object",
"description": "Standard error response structure.",
"properties": {
"error": {
"type": "string",
"description": "Detailed error message."
}
}
}

403 (application/json)

Forbidden - The caller lacks the BillingTransferAdmin permission.

{
"type": "object",
"description": "RFC 7807 problem-detail body returned by Billing Transfer endpoints for 4xx/5xx errors.",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code"
],
"properties": {
"type": {
"type": "string",
"format": "uri",
"description": "A URI identifying the problem type."
},
"title": {
"type": "string",
"description": "Short, human-readable summary of the problem type."
},
"status": {
"type": "integer",
"description": "The HTTP status code repeated in the body."
},
"detail": {
"type": "string",
"description": "Human-readable explanation specific to this occurrence of the problem."
},
"code": {
"type": "string",
"description": "Stable machine-readable error code.",
"example": "billing-transfer.batch_validation_failed"
},
"retryable": {
"type": "boolean",
"description": "Whether retrying the same request may succeed without changes."
},
"invalidItems": {
"type": "array",
"description": "Present on batch-validation failures; the batch items that failed validation.",
"items": {
"type": "object",
"description": "A single batch item that failed validation before processing began.",
"additionalProperties": false,
"required": [
"index",
"code"
],
"properties": {
"index": {
"type": "integer",
"description": "Zero-based position of the invalid item within the submitted batch."
},
"resellerCustomerId": {
"type": "string",
"description": "Present when the invalid item is a reseller-handshake batch item."
},
"code": {
"type": "string",
"description": "Stable machine-readable error code (e.g. `duplicate_pma`, `duplicate_ec_account`).",
"example": "duplicate_pma"
},
"reason": {
"type": "string",
"description": "Human-readable explanation of why the item is invalid."
}
}
}
}
}
}

500 (application/json)

Internal Server Error - Something went wrong with the DoiT API server.

{
"type": "object",
"description": "Standard error response structure.",
"properties": {
"error": {
"type": "string",
"description": "Detailed error message."
}
}
}

Aliases: listbillingtransferreselleraccountswithtenants