{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amazon-ec2-image-builder/json-schema/amazon-ec2-image-builder-list-component-build-versions-response-schema.json",
  "title": "ListComponentBuildVersionsResponse",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amazon-ec2-image-builder-listcomponentbuildversions-api-openapi.yml#/components/schemas/ListComponentBuildVersionsResponse",
  "type": "object",
  "properties": {
    "requestId": {
      "type": "string",
      "description": "The request ID that uniquely identifies this request."
    },
    "componentSummaryList": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ComponentSummary"
      },
      "description": "The list of component summaries. Each summary represents one build version of the specified component version, or of the components that your account owns if you didn't specify an ARN. Deprecated build versions aren't included."
    },
    "nextToken": {
      "type": "string",
      "description": "The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects."
    }
  },
  "$defs": {
    "ComponentState": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "DEPRECATED",
            "DISABLED",
            "ACTIVE"
          ],
          "description": "The current state of the component. Components with a status of DEPRECATED or DISABLED can't be added to new recipes."
        },
        "reason": {
          "type": "string",
          "description": "Describes how or why the component changed state."
        }
      }
    },
    "ComponentSummary": {
      "type": "object",
      "properties": {
        "arn": {
          "type": "string",
          "description": "The Amazon Resource Name (ARN) of the component."
        },
        "name": {
          "type": "string",
          "description": "The name of the component."
        },
        "version": {
          "type": "string",
          "description": "The version of the component."
        },
        "platform": {
          "type": "string",
          "enum": [
            "Windows",
            "Linux",
            "macOS"
          ],
          "description": "The operating system platform of the component."
        },
        "supportedOsVersions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The operating system (OS) version that the component supports. If the OS information is available, Image Builder performs a prefix match against the base image OS version during image recipe creation."
        },
        "state": {
          "$ref": "#/$defs/ComponentState"
        },
        "type": {
          "type": "string",
          "enum": [
            "BUILD",
            "TEST"
          ],
          "description": "The component type specifies whether Image Builder uses the component to build the image or only to test it."
        },
        "owner": {
          "type": "string",
          "description": "The owner of the component. The value is your account ID for components that you own, the sharing account's ID for shared components, or Amazon, ThirdParty, or AWSMarketplace."
        },
        "description": {
          "type": "string",
          "description": "The description of the component."
        },
        "changeDescription": {
          "type": "string",
          "description": "The change description for this version of the component."
        },
        "dateCreated": {
          "type": "string",
          "description": "The date that Image Builder created this version of the component."
        },
        "tags": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The tags that apply to the component."
        },
        "publisher": {
          "type": "string",
          "description": "Contains the name of the publisher if this is a third-party component. Otherwise, this property is empty."
        },
        "obfuscate": {
          "type": "boolean",
          "description": "Indicates whether component source is hidden from view in the console, and from component detail results for API, CLI, or SDK operations."
        }
      }
    }
  }
}