{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amazon-billing-and-cost-management/json-schema/amazon-billing-and-cost-management-list-invoice-units-request-schema.json",
  "title": "ListInvoiceUnitsRequest",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amazon-billing-and-cost-management-invoice-unit-api-openapi.yml#/components/schemas/ListInvoiceUnitsRequest",
  "type": "object",
  "properties": {
    "Filters": {
      "$ref": "#/$defs/Filters"
    },
    "NextToken": {
      "type": "string",
      "description": "The next token used to indicate where the returned list should start from."
    },
    "MaxResults": {
      "type": "integer",
      "description": "The maximum number of invoice units that can be returned."
    },
    "AsOf": {
      "type": "string",
      "format": "date-time",
      "description": "The state of an invoice unit at a specified time. You can see legacy invoice units that are currently deleted if the AsOf time is set to before it was deleted. If an AsOf is not provided, the default value is the current time."
    }
  },
  "$defs": {
    "Filters": {
      "type": "object",
      "properties": {
        "Names": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "An optional input to the list API. You can specify a list of invoice unit names inside filters to return invoice units that match only the specified invoice unit names. If multiple names are provided, the result is an OR condition (match any) of the specified invoice unit names."
        },
        "InvoiceReceivers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "You can specify a list of Amazon Web Services account IDs inside filters to return invoice units that match only the specified accounts. If multiple accounts are provided, the result is an OR condition (match any) of the specified accounts. This filter only matches the specified accounts on the invoice receivers of the invoice units."
        },
        "Accounts": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "You can specify a list of Amazon Web Services account IDs inside filters to return invoice units that match only the specified accounts. If multiple accounts are provided, the result is an OR condition (match any) of the specified accounts. The specified account IDs are matched with either the receiver or the linked accounts in the rules."
        },
        "BillSourceAccounts": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of Amazon Web Services account IDs used to filter invoice units. These are payer accounts from other Organizations that have delegated their billing responsibility to the receiver account through the billing transfer feature."
        }
      }
    }
  }
}