Module: Peddler::Notifications::ItemInventoryEventChange

Defined in:
lib/peddler/notifications/item_inventory_event_change.rb,
lib/peddler/notifications/item_inventory_event_change/payload.rb,
lib/peddler/notifications/item_inventory_event_change/notification.rb,
lib/peddler/notifications/item_inventory_event_change/notification_metadata.rb,
lib/peddler/notifications/item_inventory_event_change/item_inventory_event_change.rb,
lib/peddler/notifications/item_inventory_event_change/item_inventory_event_changes.rb

Overview

The root schema comprises the entire JSON document.

Defined Under Namespace

Classes: ItemInventoryEventChanges

Constant Summary collapse

Payload =

Notification payload data

Structure.new do
  # @return [Array<ItemInventoryEventChange>]
  attribute(:item_inventory_event_changes, [ItemInventoryEventChange], from: "itemInventoryEventChanges")
end
Notification =

The root schema comprises the entire JSON document.

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

  # @return [String]
  attribute(:notification_metadata, String, from: "notificationMetadata")

  # @return [String]
  attribute(:notification_type, String, from: "notificationType")

  # @return [String]
  attribute(:notification_version, String, from: "notificationVersion")

  # @return [Payload]
  attribute(:payload, Payload)

  # @return [String]
  attribute(:payload_version, String, from: "payloadVersion")
end
NotificationMetadata =
Structure.new do
  # @return [String]
  attribute(:application_id, String, from: "applicationId")

  # @return [String]
  attribute(:notification_id, String, from: "notificationId")

  # @return [String]
  attribute(:publish_time, String, from: "publishTime")

  # @return [String]
  attribute(:subscription_id, String, from: "subscriptionId")
end
ItemInventoryEventChange =
Structure.new do
  # @return [String] The merchant customer ID or vendor group ID of the partner account this notification is sent
  # to.
  attribute(:account_id, String, from: "accountId")

  # @return [String] The Amazon Standard Identification Number of the product.
  attribute(:asin, String)

  # @return [Time] The end of the date-time range of the inventory data in ISO 8601 format in UTC time.
  attribute(:end_time, Time, from: "endTime")

  # @return [Integer] The number of units available to be sold on the website, based on units in Amazon
  # fulfillment centers that are in sellable condition, minus units in customer shopping carts or otherwise bound
  # for other orders (for example, subscribe-and-save orders).
  attribute(:highly_available_inventory, Integer, from: "highlyAvailableInventory")

  # @return [String] The marketplace identifier of the inventory data.
  attribute(:marketplace_id, String, from: "marketplaceId")

  # @return [Time] The start of the date-time range of the inventory data in ISO 8601 format in UTC time.
  attribute(:start_time, Time, from: "startTime")
end

Class Method Summary collapse

Class Method Details

.parse(hash) ⇒ Object



12
13
14
# File 'lib/peddler/notifications/item_inventory_event_change.rb', line 12

def parse(hash)
  Notification.parse(hash)
end