Module: Peddler::Types::AplusContent20201101

Defined in:
lib/peddler/types/aplus_content_2020_11_01/error.rb,
lib/peddler/types/aplus_content_2020_11_01/asin_set.rb,
lib/peddler/types/aplus_content_2020_11_01/decorator.rb,
lib/peddler/types/aplus_content_2020_11_01/text_item.rb,
lib/peddler/types/aplus_content_2020_11_01/error_list.rb,
lib/peddler/types/aplus_content_2020_11_01/message_set.rb,
lib/peddler/types/aplus_content_2020_11_01/asin_metadata.rb,
lib/peddler/types/aplus_content_2020_11_01/decorator_set.rb,
lib/peddler/types/aplus_content_2020_11_01/image_offsets.rb,
lib/peddler/types/aplus_content_2020_11_01/aplus_response.rb,
lib/peddler/types/aplus_content_2020_11_01/asin_badge_set.rb,
lib/peddler/types/aplus_content_2020_11_01/content_module.rb,
lib/peddler/types/aplus_content_2020_11_01/content_record.rb,
lib/peddler/types/aplus_content_2020_11_01/publish_record.rb,
lib/peddler/types/aplus_content_2020_11_01/text_component.rb,
lib/peddler/types/aplus_content_2020_11_01/image_component.rb,
lib/peddler/types/aplus_content_2020_11_01/plain_text_item.rb,
lib/peddler/types/aplus_content_2020_11_01/content_document.rb,
lib/peddler/types/aplus_content_2020_11_01/content_metadata.rb,
lib/peddler/types/aplus_content_2020_11_01/image_dimensions.rb,
lib/peddler/types/aplus_content_2020_11_01/asin_metadata_set.rb,
lib/peddler/types/aplus_content_2020_11_01/content_badge_set.rb,
lib/peddler/types/aplus_content_2020_11_01/integer_with_units.rb,
lib/peddler/types/aplus_content_2020_11_01/content_module_list.rb,
lib/peddler/types/aplus_content_2020_11_01/paragraph_component.rb,
lib/peddler/types/aplus_content_2020_11_01/publish_record_list.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_text_block.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_text_module.rb,
lib/peddler/types/aplus_content_2020_11_01/content_metadata_record.rb,
lib/peddler/types/aplus_content_2020_11_01/aplus_paginated_response.rb,
lib/peddler/types/aplus_content_2020_11_01/image_crop_specification.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_text_list_block.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_text_pair_block.rb,
lib/peddler/types/aplus_content_2020_11_01/content_reference_key_set.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_image_text_block.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_tech_specs_module.rb,
lib/peddler/types/aplus_content_2020_11_01/content_metadata_record_list.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_company_logo_module.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_image_caption_block.rb,
lib/peddler/types/aplus_content_2020_11_01/get_content_document_response.rb,
lib/peddler/types/aplus_content_2020_11_01/post_content_document_request.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_image_sidebar_module.rb,
lib/peddler/types/aplus_content_2020_11_01/post_content_document_response.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_four_image_text_module.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_header_text_list_block.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_comparison_table_module.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_three_image_text_module.rb,
lib/peddler/types/aplus_content_2020_11_01/search_content_documents_response.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_comparison_product_block.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_header_image_text_module.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_image_text_caption_block.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_single_side_image_module.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_image_text_overlay_module.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_multiple_image_text_module.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_product_description_module.rb,
lib/peddler/types/aplus_content_2020_11_01/search_content_publish_records_response.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_single_image_highlights_module.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_four_image_text_quadrant_module.rb,
lib/peddler/types/aplus_content_2020_11_01/standard_single_image_specs_detail_module.rb,
lib/peddler/types/aplus_content_2020_11_01/post_content_document_asin_relations_request.rb,
lib/peddler/types/aplus_content_2020_11_01/list_content_document_asin_relations_response.rb,
lib/peddler/types/aplus_content_2020_11_01/post_content_document_asin_relations_response.rb,
lib/peddler/types/aplus_content_2020_11_01/post_content_document_suspend_submission_response.rb,
lib/peddler/types/aplus_content_2020_11_01/validate_content_document_asin_relations_response.rb,
lib/peddler/types/aplus_content_2020_11_01/post_content_document_approval_submission_response.rb

Defined Under Namespace

Classes: AsinBadgeSet, AsinMetadataSet, AsinSet, ContentBadgeSet, ContentMetadataRecordList, ContentModuleList, ContentReferenceKeySet, DecoratorSet, MessageSet, PublishRecordList

Constant Summary collapse

Error =

The error response that is returned when the request is unsuccessful.

Structure.new do
  # @return [String] An error code that identifies the type of error that occurred.
  attribute(:code, String)

  # @return [String] A message that describes the error condition.
  attribute(:message, String)

  # @return [String] Additional details that can help the caller understand or fix the issue.
  attribute?(:details, String)
end
Decorator =

A decorator that is applied to a content string value in order to create rich text.

Structure.new do
  # @return [Integer] The relative intensity or variation of this decorator. Decorators, such as bullet-points,
  # can have multiple indentation depths.
  attribute?(:depth, Integer)

  # @return [Integer] The number of content characters to alter with this decorator. Decorators, such as line
  # breaks, can have zero length and fit between characters.
  attribute?(:length, Integer)

  # @return [Integer] The starting value of this decorator within the content string. Use zero (`0`) for the first
  # value.
  attribute?(:offset, Integer)

  # @return [String]
  attribute?(:type, String)
end
TextItem =

Rich positional text that is usually presented as a collection of bullet points.

Structure.new do
  # @return [Integer] The rank or index of this text item within the collection. Different items cannot occupy the
  # same position within a single collection.
  attribute(:position, Integer)

  # @return [TextComponent]
  attribute(:text, TextComponent)
end
ErrorList =

The error response that is returned when a request is unsuccessful.

Structure.new do
  # @return [Array<Error>] A list of error responses that are returned when a request is unsuccessful.
  attribute(:errors, [Error])
end
AsinMetadata =

The A+ Content ASIN with additional metadata for content management. If you don’t include the ‘includedDataSet` parameter in a call to the `listContentDocumentAsinRelations` operation, the related ASINs are returned without metadata.

Structure.new do
  # @return [String]
  attribute(:asin, String)

  # @return [Array<AsinBadge>]
  attribute?(:badge_set, Array, from: "badgeSet")

  # @return [Array<ContentReferenceKey>]
  attribute?(:content_reference_key_set, Array, from: "contentReferenceKeySet")

  # @return [String] The default image for the ASIN in the Amazon catalog.
  attribute?(:image_url, String, from: "imageUrl")

  # @return [String]
  attribute?(:parent, String)

  # @return [String] The title for the ASIN in the Amazon catalog.
  attribute?(:title, String)
end
ImageOffsets =

The top left corner of the cropped image, specified in the original image’s coordinate space.

Structure.new do
  # @return [IntegerWithUnits]
  attribute(:x, IntegerWithUnits)

  # @return [IntegerWithUnits]
  attribute(:y, IntegerWithUnits)
end
AplusResponse =

The base response data for all A+ Content operations when a request is successful or partially successful. Individual operations can extend this with additional data.

Structure.new do
  # @return [Array<Error>]
  attribute?(:warnings, [Error])
end
ContentModule =

An A+ Content module. An A+ Content document is composed of content modules. The ‘contentModuleType` property selects which content module types to use.

Structure.new do
  # @return [String]
  attribute(:content_module_type, String, from: "contentModuleType")

  # @return [StandardCompanyLogoModule]
  attribute?(:standard_company_logo, StandardCompanyLogoModule, from: "standardCompanyLogo")

  # @return [StandardComparisonTableModule]
  attribute?(:standard_comparison_table, StandardComparisonTableModule, from: "standardComparisonTable")

  # @return [StandardFourImageTextModule]
  attribute?(:standard_four_image_text, StandardFourImageTextModule, from: "standardFourImageText")

  # @return [StandardFourImageTextQuadrantModule]
  attribute?(:standard_four_image_text_quadrant, StandardFourImageTextQuadrantModule, from: "standardFourImageTextQuadrant")

  # @return [StandardHeaderImageTextModule]
  attribute?(:standard_header_image_text, StandardHeaderImageTextModule, from: "standardHeaderImageText")

  # @return [StandardImageSidebarModule]
  attribute?(:standard_image_sidebar, StandardImageSidebarModule, from: "standardImageSidebar")

  # @return [StandardImageTextOverlayModule]
  attribute?(:standard_image_text_overlay, StandardImageTextOverlayModule, from: "standardImageTextOverlay")

  # @return [StandardMultipleImageTextModule]
  attribute?(:standard_multiple_image_text, StandardMultipleImageTextModule, from: "standardMultipleImageText")

  # @return [StandardProductDescriptionModule]
  attribute?(:standard_product_description, StandardProductDescriptionModule, from: "standardProductDescription")

  # @return [StandardSingleImageHighlightsModule]
  attribute?(:standard_single_image_highlights, StandardSingleImageHighlightsModule, from: "standardSingleImageHighlights")

  # @return [StandardSingleImageSpecsDetailModule]
  attribute?(:standard_single_image_specs_detail, StandardSingleImageSpecsDetailModule, from: "standardSingleImageSpecsDetail")

  # @return [StandardSingleSideImageModule]
  attribute?(:standard_single_side_image, StandardSingleSideImageModule, from: "standardSingleSideImage")

  # @return [StandardTechSpecsModule]
  attribute?(:standard_tech_specs, StandardTechSpecsModule, from: "standardTechSpecs")

  # @return [StandardTextModule]
  attribute?(:standard_text, StandardTextModule, from: "standardText")

  # @return [StandardThreeImageTextModule]
  attribute?(:standard_three_image_text, StandardThreeImageTextModule, from: "standardThreeImageText")
end
ContentRecord =

A content document with additional information for content management.

Structure.new do
  # @return [String]
  attribute(:content_reference_key, String, from: "contentReferenceKey")

  # @return [ContentDocument]
  attribute?(:content_document, ContentDocument, from: "contentDocument")

  # @return [ContentMetadata]
  attribute?(:content_metadata, ContentMetadata, from: "contentMetadata")
end
PublishRecord =

The full context for an A+ Content publishing event.

Structure.new do
  # @return [String]
  attribute(:asin, String)

  # @return [String]
  attribute(:content_reference_key, String, from: "contentReferenceKey")

  # @return [String]
  attribute(:content_type, String, from: "contentType")

  # @return [String]
  attribute(:locale, String)

  # @return [String]
  attribute(:marketplace_id, String, from: "marketplaceId")

  # @return [String]
  attribute?(:content_sub_type, String, from: "contentSubType")
end
TextComponent =

Rich text content.

Structure.new do
  # @return [String] The actual plain text.
  attribute(:value, String)

  # @return [Array<Decorator>]
  attribute?(:decorator_set, [Decorator], from: "decoratorSet")
end
ImageComponent =

A reference to an image, hosted in the A+ Content media library.

Structure.new do
  # @return [String] The alternative text for the image.
  attribute(:alt_text, String, from: "altText")

  # @return [ImageCropSpecification]
  attribute(:image_crop_specification, ImageCropSpecification, from: "imageCropSpecification")

  # @return [String] This identifier is provided by the [Uploads
  # API](https://developer-docs.amazon.com/sp-api/reference/welcome-to-api-references).
  attribute(:upload_destination_id, String, from: "uploadDestinationId")
end
PlainTextItem =

Plain positional text that is used in collections of brief labels and descriptors.

Structure.new do
  # @return [Integer] The rank or index of this text item within the collection. Different items cannot occupy the
  # same position within a single collection.
  attribute(:position, Integer)

  # @return [String] The actual plain text.
  attribute(:value, String)
end
ContentDocument =

The A+ Content document. This is the enhanced content that is published to product detail pages.

Structure.new do
  # @return [Array<ContentModule>]
  attribute(:content_module_list, [ContentModule], from: "contentModuleList")

  # @return [String]
  attribute(:content_type, String, from: "contentType")

  # @return [String]
  attribute(:locale, String)

  # @return [String] The A+ Content document name.
  attribute(:name, String)

  # @return [String]
  attribute?(:content_sub_type, String, from: "contentSubType")
end
ContentMetadata =

The A+ Content document’s metadata.

Structure.new do
  # @return [Array<ContentBadge>]
  attribute(:badge_set, Array, from: "badgeSet")

  # @return [String]
  attribute(:marketplace_id, String, from: "marketplaceId")

  # @return [String] The A+ Content document's name.
  attribute(:name, String)

  # @return [String]
  attribute(:status, String)

  # @return [String] The approximate age of the A+ Content document and metadata.
  attribute(:update_time, String, from: "updateTime")
end
ImageDimensions =

The dimensions that extend from the top left corner of the image (this applies to cropped and uncropped images). ‘ImageDimensions` units must be in pixels.

Structure.new do
  # @return [IntegerWithUnits]
  attribute(:height, IntegerWithUnits)

  # @return [IntegerWithUnits]
  attribute(:width, IntegerWithUnits)
end
IntegerWithUnits =

A whole number dimension and its unit of measurement. For example, this can represent 100 pixels.

Structure.new do
  # @return [String] The unit of measurement.
  attribute(:units, String)

  # @return [Integer] The dimension value.
  attribute(:value, Integer)
end
ParagraphComponent =

A list of rich text content that is typically presented in a text box.

Structure.new do
  # @return [Array<TextComponent>]
  attribute(:text_list, [TextComponent], from: "textList")
end
StandardTextBlock =

The A+ Content standard text box block, which contains a paragraph and a headline.

Structure.new do
  # @return [ParagraphComponent]
  attribute?(:body, ParagraphComponent)

  # @return [TextComponent]
  attribute?(:headline, TextComponent)
end
StandardTextModule =

A standard headline and body text.

Structure.new do
  # @return [ParagraphComponent]
  attribute(:body, ParagraphComponent)

  # @return [TextComponent]
  attribute?(:headline, TextComponent)
end
ContentMetadataRecord =

The metadata for an A+ Content document, with additional information for content management.

Structure.new do
  # @return [ContentMetadata]
  attribute(:content_metadata, ContentMetadata, from: "contentMetadata")

  # @return [String]
  attribute(:content_reference_key, String, from: "contentReferenceKey")
end
AplusPaginatedResponse =

A token that you use to retrieve the next page of results. To get the next page of results, call the operation with this token and include the same arguments as the call that produced the token. To get a complete list, call this operation until ‘nextPageToken` is null. Note that this operation can return empty pages.

Structure.new do
  # @return [String]
  attribute?(:next_page_token, String, from: "nextPageToken")

  # @return [Array<Error>]
  attribute?(:warnings, [Error])
end
ImageCropSpecification =

The instructions for optionally cropping an image. If you don’t want to crop the image, set the dimensions to the original image size. If the image is cropped and you don’t include offset values, the coordinates of the top left corner of the cropped image are set to (0,0) by default.

Structure.new do
  # @return [ImageDimensions]
  attribute(:size, ImageDimensions)

  # @return [ImageOffsets]
  attribute?(:offset, ImageOffsets)
end
StandardTextListBlock =

The A+ Content standard fixed-length list of text, usually presented as bullet points.

Structure.new do
  # @return [Array<TextItem>]
  attribute(:text_list, [TextItem], from: "textList")
end
StandardTextPairBlock =

The A+ Content standard label and description block, which contains a pair of text components.

Structure.new do
  # @return [TextComponent]
  attribute?(:description, TextComponent)

  # @return [TextComponent]
  attribute?(:label, TextComponent)
end
StandardImageTextBlock =

The A+ Content standard image and text box block.

Structure.new do
  # @return [ParagraphComponent]
  attribute?(:body, ParagraphComponent)

  # @return [TextComponent]
  attribute?(:headline, TextComponent)

  # @return [ImageComponent]
  attribute?(:image, ImageComponent)
end
StandardTechSpecsModule =

The standard table of technical feature names and definitions.

Structure.new do
  # @return [Array<StandardTextPairBlock>] The specification list.
  attribute(:specification_list, [StandardTextPairBlock], from: "specificationList")

  # @return [TextComponent]
  attribute?(:headline, TextComponent)

  # @return [Integer] The number of tables you want present. Features are evenly divided between the tables.
  attribute?(:table_count, Integer, from: "tableCount")
end
StandardCompanyLogoModule =

The standard company logo image.

Structure.new do
  # @return [ImageComponent]
  attribute(:company_logo, ImageComponent, from: "companyLogo")
end
StandardImageCaptionBlock =

The A+ Content standard image and caption block.

Structure.new do
  # @return [TextComponent]
  attribute?(:caption, TextComponent)

  # @return [ImageComponent]
  attribute?(:image, ImageComponent)
end
GetContentDocumentResponse =
Structure.new do
  # @return [ContentRecord]
  attribute(:content_record, ContentRecord, from: "contentRecord")

  # @return [Array<Error>]
  attribute?(:warnings, [Error])
end
PostContentDocumentRequest =
Structure.new do
  # @return [ContentDocument]
  attribute(:content_document, ContentDocument, from: "contentDocument")
end
StandardImageSidebarModule =

Two images, two paragraphs, and two bulleted lists. One image is smaller and displayed in the sidebar.

Structure.new do
  # @return [StandardTextListBlock]
  attribute?(:description_list_block, StandardTextListBlock, from: "descriptionListBlock")

  # @return [StandardTextBlock]
  attribute?(:description_text_block, StandardTextBlock, from: "descriptionTextBlock")

  # @return [TextComponent]
  attribute?(:headline, TextComponent)

  # @return [StandardImageCaptionBlock]
  attribute?(:image_caption_block, StandardImageCaptionBlock, from: "imageCaptionBlock")

  # @return [StandardImageTextBlock]
  attribute?(:sidebar_image_text_block, StandardImageTextBlock, from: "sidebarImageTextBlock")

  # @return [StandardTextListBlock]
  attribute?(:sidebar_list_block, StandardTextListBlock, from: "sidebarListBlock")
end
PostContentDocumentResponse =
Structure.new do
  # @return [String]
  attribute(:content_reference_key, String, from: "contentReferenceKey")

  # @return [Array<Error>]
  attribute?(:warnings, [Error])
end
StandardFourImageTextModule =

Four standard images with text, presented across a single row.

Structure.new do
  # @return [StandardImageTextBlock]
  attribute?(:block1, StandardImageTextBlock)

  # @return [StandardImageTextBlock]
  attribute?(:block2, StandardImageTextBlock)

  # @return [StandardImageTextBlock]
  attribute?(:block3, StandardImageTextBlock)

  # @return [StandardImageTextBlock]
  attribute?(:block4, StandardImageTextBlock)

  # @return [TextComponent]
  attribute?(:headline, TextComponent)
end
StandardHeaderTextListBlock =

The A+ standard fixed-length list of text and a related headline.

Structure.new do
  # @return [StandardTextListBlock]
  attribute?(:block, StandardTextListBlock)

  # @return [TextComponent]
  attribute?(:headline, TextComponent)
end
StandardComparisonTableModule =

The standard product comparison table.

Structure.new do
  # @return [Array<PlainTextItem>]
  attribute?(:metric_row_labels, [PlainTextItem], from: "metricRowLabels")

  # @return [Array<StandardComparisonProductBlock>]
  attribute?(:product_columns, [StandardComparisonProductBlock], from: "productColumns")
end
StandardThreeImageTextModule =

Three standard images with text, presented across a single row.

Structure.new do
  # @return [StandardImageTextBlock]
  attribute?(:block1, StandardImageTextBlock)

  # @return [StandardImageTextBlock]
  attribute?(:block2, StandardImageTextBlock)

  # @return [StandardImageTextBlock]
  attribute?(:block3, StandardImageTextBlock)

  # @return [TextComponent]
  attribute?(:headline, TextComponent)
end
SearchContentDocumentsResponse =
Structure.new do
  # @return [Array<ContentMetadataRecord>] The content metadata records.
  attribute(:content_metadata_records, [ContentMetadataRecord], from: "contentMetadataRecords")
end
StandardComparisonProductBlock =

The A+ Content standard comparison product block.

Structure.new do
  # @return [Integer] The rank or index of this comparison product block within the module. Different blocks
  # cannot occupy the same position within a single module.
  attribute(:position, Integer)

  # @return [String]
  attribute?(:asin, String)

  # @return [:boolean] When true, indicates that this content block is visually highlighted.
  attribute?(:highlight, :boolean)

  # @return [ImageComponent]
  attribute?(:image, ImageComponent)

  # @return [Array<PlainTextItem>] Comparison metrics for the product.
  attribute?(:metrics, [PlainTextItem])

  # @return [String] The comparison product title.
  attribute?(:title, String)
end
StandardHeaderImageTextModule =

Standard headline text, an image, and body text.

Structure.new do
  # @return [StandardImageTextBlock]
  attribute?(:block, StandardImageTextBlock)

  # @return [TextComponent]
  attribute?(:headline, TextComponent)
end
StandardImageTextCaptionBlock =

The A+ Content standard image and text block, with a related caption. The caption might not display on all devices.

Structure.new do
  # @return [StandardImageTextBlock]
  attribute?(:block, StandardImageTextBlock)

  # @return [TextComponent]
  attribute?(:caption, TextComponent)
end
StandardSingleSideImageModule =

A standard headline and body text with an image on the side.

Structure.new do
  # @return [String]
  attribute(:image_position_type, String, from: "imagePositionType")

  # @return [StandardImageTextBlock]
  attribute?(:block, StandardImageTextBlock)
end
StandardImageTextOverlayModule =

A standard background image with a floating text box.

Structure.new do
  # @return [String]
  attribute(:overlay_color_type, String, from: "overlayColorType")

  # @return [StandardImageTextBlock]
  attribute?(:block, StandardImageTextBlock)
end
StandardMultipleImageTextModule =

Standard images with text, presented one at a time. The user clicks on thumbnails to view each block.

Structure.new do
  # @return [Array<StandardImageTextCaptionBlock>]
  attribute?(:blocks, [StandardImageTextCaptionBlock])
end
StandardProductDescriptionModule =

Standard product description text.

Structure.new do
  # @return [ParagraphComponent]
  attribute(:body, ParagraphComponent)
end
SearchContentPublishRecordsResponse =
Structure.new do
  # @return [Array<PublishRecord>]
  attribute(:publish_record_list, [PublishRecord], from: "publishRecordList")
end
StandardSingleImageHighlightsModule =

A standard image with several paragraphs and a bulleted list.

Structure.new do
  # @return [StandardHeaderTextListBlock]
  attribute?(:bulleted_list_block, StandardHeaderTextListBlock, from: "bulletedListBlock")

  # @return [TextComponent]
  attribute?(:headline, TextComponent)

  # @return [ImageComponent]
  attribute?(:image, ImageComponent)

  # @return [StandardTextBlock]
  attribute?(:text_block1, StandardTextBlock, from: "textBlock1")

  # @return [StandardTextBlock]
  attribute?(:text_block2, StandardTextBlock, from: "textBlock2")

  # @return [StandardTextBlock]
  attribute?(:text_block3, StandardTextBlock, from: "textBlock3")
end
StandardFourImageTextQuadrantModule =

Four standard images with text, presented on a grid of four quadrants.

Structure.new do
  # @return [StandardImageTextBlock]
  attribute(:block1, StandardImageTextBlock)

  # @return [StandardImageTextBlock]
  attribute(:block2, StandardImageTextBlock)

  # @return [StandardImageTextBlock]
  attribute(:block3, StandardImageTextBlock)

  # @return [StandardImageTextBlock]
  attribute(:block4, StandardImageTextBlock)
end
StandardSingleImageSpecsDetailModule =

A standard image with paragraphs, a bulleted list, and extra space for technical details.

Structure.new do
  # @return [StandardTextBlock]
  attribute?(:description_block1, StandardTextBlock, from: "descriptionBlock1")

  # @return [StandardTextBlock]
  attribute?(:description_block2, StandardTextBlock, from: "descriptionBlock2")

  # @return [TextComponent]
  attribute?(:description_headline, TextComponent, from: "descriptionHeadline")

  # @return [TextComponent]
  attribute?(:headline, TextComponent)

  # @return [ImageComponent]
  attribute?(:image, ImageComponent)

  # @return [TextComponent]
  attribute?(:specification_headline, TextComponent, from: "specificationHeadline")

  # @return [StandardHeaderTextListBlock]
  attribute?(:specification_list_block, StandardHeaderTextListBlock, from: "specificationListBlock")

  # @return [StandardTextBlock]
  attribute?(:specification_text_block, StandardTextBlock, from: "specificationTextBlock")
end
PostContentDocumentAsinRelationsRequest =
Structure.new do
  # @return [Array<Asin>]
  attribute(:asin_set, Array, from: "asinSet")
end
ListContentDocumentAsinRelationsResponse =
Structure.new do
  # @return [Array<AsinMetadata>]
  attribute(:asin_metadata_set, [AsinMetadata], from: "asinMetadataSet")
end
PostContentDocumentAsinRelationsResponse =
Structure.new do
  # @return [Array<Error>]
  attribute?(:warnings, [Error])
end
PostContentDocumentSuspendSubmissionResponse =
Structure.new do
  # @return [Array<Error>]
  attribute?(:warnings, [Error])
end
ValidateContentDocumentAsinRelationsResponse =
Structure.new do
  # @return [Array<Error>] A list of error responses that are returned when a request is unsuccessful.
  attribute(:errors, [Error])

  # @return [Array<Error>]
  attribute?(:warnings, [Error])
end
PostContentDocumentApprovalSubmissionResponse =
Structure.new do
  # @return [Array<Error>]
  attribute?(:warnings, [Error])
end