Module: Peddler::Notifications::ItemSalesEventChange

Defined in:
lib/peddler/notifications/item_sales_event_change.rb,
lib/peddler/notifications/item_sales_event_change/payload.rb,
lib/peddler/notifications/item_sales_event_change/notification.rb,
lib/peddler/notifications/item_sales_event_change/notification_metadata.rb,
lib/peddler/notifications/item_sales_event_change/item_sales_event_change.rb,
lib/peddler/notifications/item_sales_event_change/item_sales_event_changes.rb

Overview

The root schema comprises the entire JSON document.

Defined Under Namespace

Classes: ItemSalesEventChanges

Constant Summary collapse

Payload =

Notification payload data

Structure.new do
  # @return [Array<ItemSalesEventChange>]
  attribute(:item_sales_event_changes, [ItemSalesEventChange], from: "itemSalesEventChanges")
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
ItemSalesEventChange =
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 [String] The currency code of any monetary amounts in ISO 4217 format.
  attribute(:currency_code, String, from: "currencyCode")

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

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

  # @return [Float] The ordered product sales in the specified time frame. Adjustments are made for cancellations.
  attribute(:ordered_revenue, Float, from: "orderedRevenue")

  # @return [Integer] The number of units ordered by Amazon customers in the specified time frame. This number can
  # be negative if there are more cancellations than orders.
  attribute(:ordered_units, Integer, from: "orderedUnits")

  # @return [Time] The start of the date-time range of the sales 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_sales_event_change.rb', line 12

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