Class: MWS::Subscriptions

Inherits:
Peddler::Client show all
Defined in:
lib/mws/subscriptions.rb

Overview

The Amazon MWS Subscriptions API section enables you to subscribe to receive notifications that are relevant to your business with Amazon. With the operations in the Subscriptions API section, you can register to receive important information from Amazon without having to poll the Amazon MWS service. Instead, the information is sent directly to you when an event occurs to which you are subscribed.

Constant Summary

Constants inherited from Peddler::Client

Peddler::Client::BadMarketplaceId, Peddler::Client::HOSTS

Instance Attribute Summary

Attributes inherited from Peddler::Client

#body, #marketplace_id, #merchant_id

Instance Method Summary collapse

Methods inherited from Peddler::Client

#aws_endpoint, #headers, inherited, #operation, path, #run

Instance Method Details

#create_subscription(notification_type, sqs_queue_url, marketplace_id = marketplace_id) ⇒ Peddler::XMLParser

Creates a new subscription

Parameters:

  • notification_type (String)
  • sqs_queue_url (String)
  • marketplace_id (String) (defaults to: marketplace_id)

Returns:

See Also:



74
75
76
77
78
79
80
# File 'lib/mws/subscriptions.rb', line 74

def create_subscription(notification_type, sqs_queue_url, marketplace_id = marketplace_id)
  operation('CreateSubscription')
    .add('MarketplaceId' => marketplace_id)
    .add(build_subscription(notification_type, sqs_queue_url))

  run
end

#delete_subscription(notification_type, sqs_queue_url, marketplace_id = marketplace_id) ⇒ Peddler::XMLParser

Deletes a subscription

Parameters:

  • notification_type (String)
  • sqs_queue_url (String)
  • marketplace_id (String) (defaults to: marketplace_id)

Returns:

See Also:



104
105
106
107
108
109
110
# File 'lib/mws/subscriptions.rb', line 104

def delete_subscription(notification_type, sqs_queue_url, marketplace_id = marketplace_id)
  operation('DeleteSubscription')
    .add('MarketplaceId' => marketplace_id, 'NotificationType' => notification_type)
    .add(build_destination(sqs_queue_url))

  run
end

#deregister_destination(sqs_queue_url, marketplace_id = marketplace_id) ⇒ Peddler::XMLParser

Removes an existing destination from the list of registered destinations

Parameters:

  • sqs_queue_url (String)
  • marketplace_id (String) (defaults to: marketplace_id)

Returns:

See Also:



33
34
35
36
37
38
39
# File 'lib/mws/subscriptions.rb', line 33

def deregister_destination(sqs_queue_url, marketplace_id = marketplace_id)
  operation('DeregisterDestination')
    .add('MarketplaceId' => marketplace_id)
    .add(build_destination(sqs_queue_url))

  run
end

#get_service_statusPeddler::XMLParser

Gets the service status of the API



144
145
146
147
# File 'lib/mws/subscriptions.rb', line 144

def get_service_status
  operation('GetServiceStatus')
  run
end

#get_subscription(notification_type, sqs_queue_url, marketplace_id = marketplace_id) ⇒ Peddler::XMLParser

Gets a subscription

Parameters:

  • notification_type (String)
  • sqs_queue_url (String)
  • marketplace_id (String) (defaults to: marketplace_id)

Returns:

See Also:



89
90
91
92
93
94
95
# File 'lib/mws/subscriptions.rb', line 89

def get_subscription(notification_type, sqs_queue_url, marketplace_id = marketplace_id)
  operation('GetSubscription')
    .add('MarketplaceId' => marketplace_id, 'NotificationType' => notification_type)
    .add(build_destination(sqs_queue_url))

  run
end

#list_registered_destinations(marketplace_id = marketplace_id) ⇒ Peddler::XMLParser

Lists all registered destinations

Parameters:

  • marketplace_id (String) (defaults to: marketplace_id)

Returns:

See Also:



46
47
48
49
50
51
# File 'lib/mws/subscriptions.rb', line 46

def list_registered_destinations( marketplace_id = marketplace_id)
  operation('ListRegisteredDestinations')
    .add('MarketplaceId' => marketplace_id)

  run
end

#list_subscriptions(marketplace_id = marketplace_id) ⇒ Peddler::XMLParser

Lists current subscriptions

Parameters:

  • marketplace_id (String) (defaults to: marketplace_id)

Returns:

See Also:



117
118
119
120
121
122
# File 'lib/mws/subscriptions.rb', line 117

def list_subscriptions(marketplace_id = marketplace_id)
  operation('ListSubscriptions')
    .add('MarketplaceId' => marketplace_id)

  run
end

#register_destination(sqs_queue_url, marketplace_id = marketplace_id) ⇒ Peddler::XMLParser

Registers a new destination to receive notifications

Parameters:

  • sqs_queue_url (String)
  • marketplace_id (String) (defaults to: marketplace_id)

Returns:

See Also:



19
20
21
22
23
24
25
# File 'lib/mws/subscriptions.rb', line 19

def register_destination(sqs_queue_url, marketplace_id = marketplace_id)
  operation('RegisterDestination')
    .add('MarketplaceId' => marketplace_id)
    .add(build_destination(sqs_queue_url))

  run
end

#send_test_notification_to_destination(sqs_queue_url, marketplace_id = marketplace_id) ⇒ Peddler::XMLParser

Sends a test notification to an existing destination

Parameters:

  • sqs_queue_url (String)
  • marketplace_id (String) (defaults to: marketplace_id)

Returns:

See Also:



59
60
61
62
63
64
65
# File 'lib/mws/subscriptions.rb', line 59

def send_test_notification_to_destination(sqs_queue_url, marketplace_id = marketplace_id)
  operation('SendTestNotificationToDestination')
    .add('MarketplaceId' => marketplace_id)
    .add(build_destination(sqs_queue_url))

  run
end

#update_subscription(notification_type, sqs_queue_url, enabled, marketplace_id = marketplace_id) ⇒ Peddler::XMLParser

Updates a subscription

Parameters:

  • notification_type (String)
  • sqs_queue_url (String)
  • enabled (Boolean)
  • marketplace_id (String) (defaults to: marketplace_id)

Returns:

See Also:



132
133
134
135
136
137
138
# File 'lib/mws/subscriptions.rb', line 132

def update_subscription(notification_type, sqs_queue_url, enabled, marketplace_id = marketplace_id)
  operation('CreateSubscription')
    .add('MarketplaceId' => marketplace_id)
    .add(build_subscription(notification_type, sqs_queue_url, enabled))

  run
end