{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amazon-compute-optimizer/json-schema/amazon-compute-optimizer-export-license-recommendations-request-schema.json",
  "title": "ExportLicenseRecommendationsRequest",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amazon-compute-optimizer-operations-api-openapi.yml#/components/schemas/ExportLicenseRecommendationsRequest",
  "type": "object",
  "properties": {
    "accountIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The IDs of the Amazon Web Services accounts for which to export license recommendations. If your account is the management account of an organization, use this parameter to specify the member account for which you want to export recommendations. This parameter can't be specified together with the include member accounts parameter. The parameters are mutually exclusive. If this parameter is omitted, recommendations for member accounts aren't included in the export. You can specify multiple account IDs per request."
    },
    "filters": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/LicenseRecommendationFilter"
      },
      "description": "An array of objects to specify a filter that exports a more specific set of license recommendations."
    },
    "fieldsToExport": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "AccountId",
          "ResourceArn",
          "LookbackPeriodInDays",
          "LastRefreshTimestamp",
          "Finding",
          "FindingReasonCodes",
          "CurrentLicenseConfigurationNumberOfCores",
          "CurrentLicenseConfigurationInstanceType",
          "CurrentLicenseConfigurationOperatingSystem",
          "CurrentLicenseConfigurationLicenseName",
          "CurrentLicenseConfigurationLicenseEdition",
          "CurrentLicenseConfigurationLicenseModel",
          "CurrentLicenseConfigurationLicenseVersion",
          "CurrentLicenseConfigurationMetricsSource",
          "RecommendationOptionsOperatingSystem",
          "RecommendationOptionsLicenseEdition",
          "RecommendationOptionsLicenseModel",
          "RecommendationOptionsSavingsOpportunityPercentage",
          "RecommendationOptionsEstimatedMonthlySavingsCurrency",
          "RecommendationOptionsEstimatedMonthlySavingsValue",
          "Tags"
        ]
      },
      "description": "The recommendations data to include in the export file. For more information about the fields that can be exported, see Exported files in the Compute Optimizer User Guide."
    },
    "s3DestinationConfig": {
      "$ref": "#/$defs/S3DestinationConfig"
    },
    "fileFormat": {
      "type": "string",
      "enum": [
        "Csv"
      ],
      "description": "The format of the export file. A CSV file is the only export format currently supported."
    },
    "includeMemberAccounts": {
      "type": "boolean",
      "description": "Indicates whether to include recommendations for resources in all member accounts of the organization if your account is the management account of an organization. The member accounts must also be opted in to Compute Optimizer, and trusted access for Compute Optimizer must be enabled in the organization account. For more information, see Compute Optimizer and Amazon Web Services Organizations trusted access in the Compute Optimizer User Guide. If this parameter is omitted, recommendations for member accounts of the organization aren't included in the export file . This parameter cannot be spec"
    }
  },
  "required": [
    "s3DestinationConfig"
  ],
  "$defs": {
    "LicenseRecommendationFilter": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "enum": [
            "Finding",
            "FindingReasonCode",
            "LicenseName"
          ],
          "description": "The name of the filter. Specify Finding to return recommendations with a specific finding classification. Specify FindingReasonCode to return recommendations with a specific finding reason code. You can filter your license recommendations by tag:key and tag-key tags. A tag:key is a key and value combination of a tag assigned to your license recommendations. Use the tag key in the filter name and the tag value as the filter value. For example, to find all license recommendations that have a tag with the key of Owner and the value of TeamA, specify tag:Owner for the filter name and TeamA for the"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The value of the filter. The valid values for this parameter are as follows, depending on what you specify for the name parameter: If you specify the name parameter as Finding, then specify Optimized, NotOptimized, or InsufficentMetrics. If you specify the name parameter as FindingReasonCode, then specify Optimized, LicenseOverprovisioned, InvalidCloudwatchApplicationInsights, or CloudwatchApplicationInsightsError."
        }
      }
    },
    "S3DestinationConfig": {
      "type": "object",
      "properties": {
        "bucket": {
          "type": "string",
          "description": "The name of the Amazon S3 bucket to use as the destination for an export job."
        },
        "keyPrefix": {
          "type": "string",
          "description": "The Amazon S3 bucket prefix for an export job."
        }
      }
    }
  }
}