dhl-ecommerce 1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,24 @@
1
+ module DHL
2
+ module Ecommerce
3
+ class Location < Base
4
+ include DHL::Ecommerce::Operations::Find
5
+ include DHL::Ecommerce::Operations::List
6
+
7
+ attr_reader :id, :account_id, :address, :email, :phone, :fax
8
+
9
+ def initialize(attributes = {})
10
+ super attributes
11
+
12
+ unless attributes.empty?
13
+ @id = attributes[:pickup].to_i if attributes[:pickup]
14
+ @account_id = attributes[:account].to_i if attributes[:account]
15
+ @address = StandardAddress.new attributes
16
+ end
17
+ end
18
+
19
+ def account
20
+ @account ||= DHL::Ecommerce::Account.find(account_id)
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,54 @@
1
+ module DHL
2
+ module Ecommerce
3
+ class Manifest < Base
4
+ attr_reader :id, :location_id, :file
5
+
6
+ def location_id=(location_id)
7
+ @location = nil
8
+ @location_id = location_id
9
+ end
10
+
11
+ def location
12
+ @location ||= DHL::Ecommerce::Location.find location_id
13
+ end
14
+
15
+ def self.create(labels)
16
+ labels.group_by(&:location_id).each.collect do |location_id, location_labels|
17
+ closeout_id = DHL::Ecommerce.request :get, "https://api.dhlglobalmail.com/v1/{DHL::Ecommerce::Location.resource_name.downcase}s/#{location_id}/closeout/id"
18
+
19
+ location_labels.each_slice(500) do |slice_labels|
20
+ xml = Builder::XmlMarkup.new
21
+ xml.instruct! :xml, version: "1.1", encoding: "UTF-8"
22
+
23
+ xml.ImbpList do
24
+ slice_labels.each do |label|
25
+ xml.Impb do
26
+ xml.Construct label.impb.construct
27
+ xml.Value label.impb.value
28
+ end
29
+ end
30
+ end
31
+
32
+ DHL::Ecommerce.request :post, "https://api.dhlglobalmail.com/v1/{DHL::Ecommerce::Location.resource_name.downcase}s/#{location_id}/closeout/#{closeout_id}" do |request|
33
+ request.body xml.target!
34
+ end
35
+ end
36
+
37
+ response = DHL::Ecommerce.request :post, "https://api.dhlglobalmail.com/v1/{DHL::Ecommerce::Location.resource_name.downcase}s/#{location_id}/closeout/#{closeout_id}"
38
+ response[:manifest_list][:manifest] = [response[:manifest_list][:manifest]] unless response[:manifest_list][:manifest].is_a? Array
39
+ response[:manifest_list][:manifest].each.collect do |attributes|
40
+ new attributes.merge(location_id: location_id)
41
+ end
42
+ end.flatten
43
+ end
44
+
45
+ def initialize(attributes = {})
46
+ super attributes
47
+
48
+ unless attributes.empty?
49
+ @file = StringIO.new(Base64.decode64(attributes[:file])) if attributes[:file] unless attributes[:file].is_a? StringIO
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,18 @@
1
+ module DHL
2
+ module Ecommerce
3
+ module Operations
4
+ module Find
5
+ module ClassMethods
6
+ def find(id)
7
+ attributes = DHL::Ecommerce.request :get, "https://api.dhlglobalmail.com/v1/#{resource_name.downcase}s/#{id}"
8
+ new attributes[resource_name]
9
+ end
10
+ end
11
+
12
+ def self.included(base)
13
+ base.extend ClassMethods
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,19 @@
1
+ module DHL
2
+ module Ecommerce
3
+ module Operations
4
+ module List
5
+ module ClassMethods
6
+ def all
7
+ response = DHL::Ecommerce.request :get, "https://api.dhlglobalmail.com/v1/#{resource_name.downcase}s"
8
+ response["#{resource_name}s"][resource_name] = [response["#{resource_name}s"][resource_name]] unless response["#{resource_name}s"][resource_name].is_a? Array
9
+ response["#{resource_name}s"][resource_name].map do |attributes| new attributes end
10
+ end
11
+ end
12
+
13
+ def self.included(base)
14
+ base.extend ClassMethods
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,34 @@
1
+ module DHL
2
+ module Ecommerce
3
+ class Product < Base
4
+ include DHL::Ecommerce::Operations::Find
5
+ include DHL::Ecommerce::Operations::List
6
+
7
+ TYPES = {
8
+ domestic: "DomesticUS",
9
+ international: "International"
10
+ }
11
+
12
+ CATEGORIES = {
13
+ clearance: "Clearance",
14
+ expedited: "Expedited",
15
+ expedited_parcel: "Expedited P",
16
+ ground: "Ground",
17
+ other: "Other Services",
18
+ priority: "Priority",
19
+ standard: "Standard"
20
+ }
21
+
22
+ attr_reader :id, :name, :category, :type
23
+
24
+ def initialize(attributes = {})
25
+ super attributes
26
+
27
+ unless attributes.empty?
28
+ @category = CATEGORIES.key(attributes[:category]) if attributes[:category]
29
+ @type = TYPES.key(attributes[:class]) if attributes[:class]
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,20 @@
1
+ module DHL
2
+ module Ecommerce
3
+ class StandardAddress < Base
4
+ attr_accessor :name, :firm, :address_1, :address_2, :city, :state, :postal_code, :country
5
+
6
+ def initialize(attributes = {})
7
+ super attributes
8
+
9
+ unless attributes.empty?
10
+ @name = attributes[:contact] if attributes[:contact]
11
+ @name = attributes[:recipient] if attributes[:recipient]
12
+ @firm = attributes[:account_name] if attributes[:account_name]
13
+ @firm = attributes[:pickup_name] if attributes[:pickup_name]
14
+ @address_1 = attributes[:address1] if attributes[:address1]
15
+ @address_2 = attributes[:address2] if attributes[:address2]
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,18 @@
1
+ module DHL
2
+ module Ecommerce
3
+ class TrackedEvent < Base
4
+ include DHL::Ecommerce::Operations::Find
5
+ include DHL::Ecommerce::Operations::List
6
+
7
+ attr_reader :created_at, :event, :location, :postal_code
8
+
9
+ def initialize(attributes = {})
10
+ super attributes
11
+
12
+ unless attributes.empty?
13
+ @created_at = Time.parse("#{attributes[:date]} #{attributes[:time]} #{attributes[:time_zone]}") if attributes[:date] && attributes[:time] && attributes[:time_zone]
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,5 @@
1
+ module DHL
2
+ module Ecommerce
3
+ VERSION = "1.0"
4
+ end
5
+ end
@@ -0,0 +1,11 @@
1
+ require_relative "spec_helper"
2
+
3
+ describe DHL::Ecommerce::Account do
4
+ it "must work" do
5
+ DHL::Ecommerce::Account.find 5115902
6
+ end
7
+
8
+ it "must work2" do
9
+ DHL::Ecommerce::Account.all
10
+ end
11
+ end
@@ -0,0 +1,381 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.dhlglobalmail.com/v1/accounts/5115902?access_token=sP0WTuBUBte2N1UzcBy0ZQOjAptsjXKvnavkx43Nyzk%2BbQPTF80%2BnJiYoEWCdFQUQQW3wv4jQx8WNrGd2JEAEXYSrip77np4F7X2icSxAgorjRdabr7d1jjktOI1Z4487KpkdJes%2BI4byatWZRX7Uig7v/VTsztthTk8IUrWowttiEBQnw0/NjRe4drp3mFAzlzrOYtroRjZ13eqE6l%2BnQ==&client_id=<CLIENT_ID>
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/xml
12
+ Content-Type:
13
+ - application/xml;charset=UTF-8
14
+ User-Agent:
15
+ - Faraday v0.9.1
16
+ Accept-Encoding:
17
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Transfer-Encoding:
24
+ - chunked
25
+ Content-Type:
26
+ - application/xml;charset=UTF-8
27
+ Server:
28
+ - Microsoft-IIS/7.5
29
+ X-Powered-By:
30
+ - WEB5
31
+ Date:
32
+ - Wed, 04 Mar 2015 05:25:58 GMT
33
+ body:
34
+ encoding: UTF-8
35
+ string: |-
36
+ <?xml version="1.0" encoding="UTF-8"?>
37
+ <Response><Meta><Timestamp>2015-03-04T00:25:58-05:00</Timestamp><Code>200</Code></Meta><Data><Account><Address2>STE 103</Address2><PostalCode>98230</PostalCode><State>WA</State><Address1>288 MARTIN ST</Address1><Country>US</Country><Email>Olivia@meowbox.com</Email><City>BLAINE</City><AccountName>MEOWBOX</AccountName><Account>5115902</Account><Contact/></Account></Data></Response>
38
+ http_version:
39
+ recorded_at: Wed, 04 Mar 2015 05:26:12 GMT
40
+ - request:
41
+ method: get
42
+ uri: https://api.dhlglobalmail.com/v1/accounts?access_token=sP0WTuBUBte2N1UzcBy0ZQOjAptsjXKvnavkx43Nyzk%2BbQPTF80%2BnJiYoEWCdFQUQQW3wv4jQx8WNrGd2JEAEXYSrip77np4F7X2icSxAgorjRdabr7d1jjktOI1Z4487KpkdJes%2BI4byatWZRX7Uig7v/VTsztthTk8IUrWowttiEBQnw0/NjRe4drp3mFAzlzrOYtroRjZ13eqE6l%2BnQ==&client_id=<CLIENT_ID>
43
+ body:
44
+ encoding: US-ASCII
45
+ string: ''
46
+ headers:
47
+ Accept:
48
+ - application/xml
49
+ Content-Type:
50
+ - application/xml;charset=UTF-8
51
+ User-Agent:
52
+ - Faraday v0.9.1
53
+ Accept-Encoding:
54
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
55
+ response:
56
+ status:
57
+ code: 200
58
+ message: OK
59
+ headers:
60
+ Transfer-Encoding:
61
+ - chunked
62
+ Content-Type:
63
+ - application/xml;charset=UTF-8
64
+ Server:
65
+ - Microsoft-IIS/7.5
66
+ X-Powered-By:
67
+ - WEB4
68
+ Date:
69
+ - Wed, 04 Mar 2015 05:25:58 GMT
70
+ body:
71
+ encoding: UTF-8
72
+ string: |-
73
+ <?xml version="1.0" encoding="UTF-8"?>
74
+ <Response><Meta><Timestamp>2015-03-04T00:25:58-05:00</Timestamp><Code>200</Code></Meta><Data><Accounts><Account><Address2>STE 103</Address2><PostalCode>98230</PostalCode><State>WA</State><Address1>288 MARTIN ST</Address1><Country>US</Country><Email>Olivia@meowbox.com</Email><City>BLAINE</City><AccountName>MEOWBOX</AccountName><Account>5115902</Account><Contact/></Account></Accounts></Data></Response>
75
+ http_version:
76
+ recorded_at: Wed, 04 Mar 2015 05:26:13 GMT
77
+ - request:
78
+ method: get
79
+ uri: https://api.dhlglobalmail.com/v1/events/600?access_token=sP0WTuBUBte2N1UzcBy0ZQOjAptsjXKvnavkx43Nyzk%2BbQPTF80%2BnJiYoEWCdFQUQQW3wv4jQx8WNrGd2JEAEXYSrip77np4F7X2icSxAgorjRdabr7d1jjktOI1Z4487KpkdJes%2BI4byatWZRX7Uig7v/VTsztthTk8IUrWowttiEBQnw0/NjRe4drp3mFAzlzrOYtroRjZ13eqE6l%2BnQ==&client_id=<CLIENT_ID>
80
+ body:
81
+ encoding: US-ASCII
82
+ string: ''
83
+ headers:
84
+ Accept:
85
+ - application/xml
86
+ Content-Type:
87
+ - application/xml;charset=UTF-8
88
+ User-Agent:
89
+ - Faraday v0.9.1
90
+ Accept-Encoding:
91
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
92
+ response:
93
+ status:
94
+ code: 200
95
+ message: OK
96
+ headers:
97
+ Transfer-Encoding:
98
+ - chunked
99
+ Content-Type:
100
+ - application/xml;charset=UTF-8
101
+ Server:
102
+ - Microsoft-IIS/7.5
103
+ X-Powered-By:
104
+ - WEB4
105
+ Date:
106
+ - Wed, 04 Mar 2015 05:25:59 GMT
107
+ body:
108
+ encoding: UTF-8
109
+ string: |-
110
+ <?xml version="1.0" encoding="UTF-8"?>
111
+ <Response><Meta><Timestamp>2015-03-04T00:25:59-05:00</Timestamp><Code>200</Code></Meta><Data><Event><Description>DELIVERED</Description><Id>600</Id></Event></Data></Response>
112
+ http_version:
113
+ recorded_at: Wed, 04 Mar 2015 05:26:14 GMT
114
+ - request:
115
+ method: get
116
+ uri: https://api.dhlglobalmail.com/v1/events?access_token=sP0WTuBUBte2N1UzcBy0ZQOjAptsjXKvnavkx43Nyzk%2BbQPTF80%2BnJiYoEWCdFQUQQW3wv4jQx8WNrGd2JEAEXYSrip77np4F7X2icSxAgorjRdabr7d1jjktOI1Z4487KpkdJes%2BI4byatWZRX7Uig7v/VTsztthTk8IUrWowttiEBQnw0/NjRe4drp3mFAzlzrOYtroRjZ13eqE6l%2BnQ==&client_id=<CLIENT_ID>
117
+ body:
118
+ encoding: US-ASCII
119
+ string: ''
120
+ headers:
121
+ Accept:
122
+ - application/xml
123
+ Content-Type:
124
+ - application/xml;charset=UTF-8
125
+ User-Agent:
126
+ - Faraday v0.9.1
127
+ Accept-Encoding:
128
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
129
+ response:
130
+ status:
131
+ code: 200
132
+ message: OK
133
+ headers:
134
+ Transfer-Encoding:
135
+ - chunked
136
+ Content-Type:
137
+ - application/xml;charset=UTF-8
138
+ Server:
139
+ - Microsoft-IIS/7.5
140
+ X-Powered-By:
141
+ - WEB5
142
+ Date:
143
+ - Wed, 04 Mar 2015 05:26:00 GMT
144
+ body:
145
+ encoding: UTF-8
146
+ string: |-
147
+ <?xml version="1.0" encoding="UTF-8"?>
148
+ <Response><Meta><Timestamp>2015-03-04T00:26:00-05:00</Timestamp><Code>200</Code></Meta><Data><Events><Event><Description>ELECTRONIC NOTIFICATION RECEIVED</Description><Id>99</Id></Event><Event><Description>PICK UP</Description><Id>100</Id></Event><Event><Description>SHIPMENT DEPARTED SELLERS ORIGIN TERMINAL</Description><Id>110</Id></Event><Event><Description>RECEIVED BY CARRIER FOR TRANSPORT</Description><Id>115</Id></Event><Event><Description>DEPART ORIGIN DHL TRANSPORT LOCATION</Description><Id>120</Id></Event><Event><Description>ARRIVAL SORT LOCATION</Description><Id>125</Id></Event><Event><Description>PICKED UP BY SHIPPING PARTNER</Description><Id>130</Id></Event><Event><Description>AVAILABLE FOR DELIVERY TO DHL DISTRIBUTION CENTER</Description><Id>150</Id></Event><Event><Description>ARRIVAL DHL DISTRIBUTION CENTER</Description><Id>155</Id></Event><Event><Description>ARRIVAL DHL DISTRIBUTION CENTER</Description><Id>200</Id></Event><Event><Description>PROCESSED</Description><Id>220</Id></Event><Event><Description>IDENTIFIED AS UNPROCESSABLE</Description><Id>221</Id></Event><Event><Description>DELETED</Description><Id>222</Id></Event><Event><Description>RE-ENCODED</Description><Id>223</Id></Event><Event><Description>DAMAGED IN PROCESSING</Description><Id>224</Id></Event><Event><Description>ORIGINAL ENCODED MAIL TYPE INCORRECT</Description><Id>226</Id></Event><Event><Description>DHL MIS-SHIPPED</Description><Id>227</Id></Event><Event><Description>RETURN SHIPMENT LABEL CREATED</Description><Id>235</Id></Event><Event><Description>DEPARTURE DHL DISTRIBUTION CENTER</Description><Id>300</Id></Event><Event><Description>ARRIVAL DESTINATION DHL DISTRIBUTION CENTER</Description><Id>350</Id></Event><Event><Description>PROCESSED SORT FACILITY</Description><Id>365</Id></Event><Event><Description>SCANNED INTO SACK/CONTAINER</Description><Id>375</Id></Event><Event><Description>TENDERED TO USPS</Description><Id>400</Id></Event><Event><Description>MANIFESTED FOR OUTBOUND TRANSPORTATION</Description><Id>401</Id></Event><Event><Description>PROCESSING COMPLETED AT ORIGIN</Description><Id>431</Id></Event><Event><Description>MANIFESTED FOR OUTBOUND TRANSPORTATION</Description><Id>451</Id></Event><Event><Description>IN TRANSIT</Description><Id>499</Id></Event><Event><Description>ARRIVED AT CUSTOMS</Description><Id>501</Id></Event><Event><Description>CLEARED CUSTOMS</Description><Id>502</Id></Event><Event><Description>CONSIGNEE CONTACTED FOR PAYMENT</Description><Id>503</Id></Event><Event><Description>DUTIES PAYMENT RECEIVED</Description><Id>504</Id></Event><Event><Description>SHIPMENT ACCEPTED BY USPS</Description><Id>505</Id></Event><Event><Description>HELD AT CUSTOMS</Description><Id>506</Id></Event><Event><Description>SHIPMENT DATA RECEIVED</Description><Id>507</Id></Event><Event><Description>CUSTOMS DELAY</Description><Id>508</Id></Event><Event><Description>IN CLEARANCE PROCESSING</Description><Id>509</Id></Event><Event><Description>SHIPMENT ACCEPTED BY USPS</Description><Id>510</Id></Event><Event><Description>SHIPMENT ACCEPTED</Description><Id>511</Id></Event><Event><Description>DATA BUT NO PIECE</Description><Id>512</Id></Event><Event><Description>PIECE BUT NO DATA</Description><Id>513</Id></Event><Event><Description>ARRIVAL AT POST OFFICE</Description><Id>520</Id></Event><Event><Description>ARRIVED AT TERMINAL LOCATION</Description><Id>521</Id></Event><Event><Description>ARRIVED USPS SORT FACILITY</Description><Id>526</Id></Event><Event><Description>SHIPMENT WAS PROCESSED AT EXPORT SORTING HUB</Description><Id>528</Id></Event><Event><Description>PROCESSED SORT FACILITY</Description><Id>529</Id></Event><Event><Description>FORWARDED</Description><Id>530</Id></Event><Event><Description>DEPARTED TERMINAL LOCATION</Description><Id>531</Id></Event><Event><Description>TRANSPORT TO DESTINATION COUNTRY</Description><Id>532</Id></Event><Event><Description>ARRIVAL AT DESTINATION COUNTRY</Description><Id>533</Id></Event><Event><Description>FORWARDED</Description><Id>534</Id></Event><Event><Description>HANDED OVER TO PARTNER CARRIER</Description><Id>535</Id></Event><Event><Description>SORTED THROUGH USPS FACILITY</Description><Id>536</Id></Event><Event><Description>SORTED TO FINAL DELIVERY LOCATION</Description><Id>537</Id></Event><Event><Description>DEPART USPS SORT FACILITY</Description><Id>538</Id></Event><Event><Description>SORTING COMPLETE</Description><Id>539</Id></Event><Event><Description>PROCESSED THROUGH SORT FACILITY</Description><Id>540</Id></Event><Event><Description>EN ROUTE TO DELIVERY LOCATION</Description><Id>541</Id></Event><Event><Description>ARRIVED AT DELIVERING TERMINAL</Description><Id>542</Id></Event><Event><Description>SHIPMENT WAS PROCESSED AT DESTINATION SORTING HUB</Description><Id>543</Id></Event><Event><Description>SHIPMENT WAS LOADED INTO DELIVERY VEHICLE</Description><Id>544</Id></Event><Event><Description>ENROUTE</Description><Id>545</Id></Event><Event><Description>MISROUTE - FORWARDED TO DESTINATION</Description><Id>546</Id></Event><Event><Description>AVAILABLE FOR DELIVERY</Description><Id>547</Id></Event><Event><Description>DISPATCHED FROM INTERNATIONAL SERVICE CENTER</Description><Id>548</Id></Event><Event><Description>NOTICE LEFT</Description><Id>550</Id></Event><Event><Description>NO ONE HOME, CARD LEFT</Description><Id>551</Id></Event><Event><Description>NO ONE TO RECEIVE, CARD LEFT</Description><Id>552</Id></Event><Event><Description>NOTICE LEFT (RECEPTACLE FULL/ITEM OVERSIZED)</Description><Id>553</Id></Event><Event><Description>NOTICE LEFT (NO SECURE LOCATION AVAILABLE)</Description><Id>554</Id></Event><Event><Description>NOTICE LEFT (BUSINESS CLOSED)</Description><Id>555</Id></Event><Event><Description>NOTICE LEFT (NO AUTHORIZED RECIPIENT AVAILABLE)</Description><Id>556</Id></Event><Event><Description>ARRIVAL AT PICK-UP-POINT</Description><Id>560</Id></Event><Event><Description>AVAILABLE FOR PICKUP</Description><Id>570</Id></Event><Event><Description>DELIVERY ATTEMPTED; RETURNED FOR RE-DELIVERY</Description><Id>571</Id></Event><Event><Description>PICKED UP BY CONSIGNEE</Description><Id>572</Id></Event><Event><Description>SHIPMENT HANDED OVER TO LOCAL CUSTOMS OFFICE; CONSIGNEE CONTACTED FOR PICKUP</Description><Id>588</Id></Event><Event><Description>DELAYED DELIVERY AS PER CONSIGNEE REQUEST</Description><Id>589</Id></Event><Event><Description>PICKED UP BY AGENT</Description><Id>590</Id></Event><Event><Description>COD AMOUNT COLLECTED</Description><Id>591</Id></Event><Event><Description>POSSIBLE DELIVERY DELAY</Description><Id>592</Id></Event><Event><Description>POSSIBLE DELIVERY DELAY - ADVERSE WEATHER</Description><Id>593</Id></Event><Event><Description>CONSIGNEE ON HOLIDAY</Description><Id>594</Id></Event><Event><Description>ATTEMPTED DELIVERY</Description><Id>596</Id></Event><Event><Description>OUT FOR DELIVERY</Description><Id>597</Id></Event><Event><Description>OUT FOR DELIVERY</Description><Id>598</Id></Event><Event><Description>RECEIVED AT OPENING UNIT</Description><Id>599</Id></Event><Event><Description>DELIVERED</Description><Id>600</Id></Event><Event><Description>SHIPMENT RETURNED TO SHIPPER</Description><Id>602</Id></Event><Event><Description>RETURNED TO DELIVERY WAREHOUSE</Description><Id>603</Id></Event><Event><Description>SHIPMENT RECALLED BY SENDER</Description><Id>604</Id></Event><Event><Description>REFUSED</Description><Id>610</Id></Event><Event><Description>CUSTOMER REFUSED SHIPMENT</Description><Id>611</Id></Event><Event><Description>VISIBLE DAMAGE</Description><Id>620</Id></Event><Event><Description>UNDELIVERABLE AS ADDRESSED</Description><Id>630</Id></Event><Event><Description>INCORRECT ADDRESS</Description><Id>631</Id></Event><Event><Description>CHANGE OF ADDRESS</Description><Id>632</Id></Event><Event><Description>DELIVERY NOT POSSIBLE</Description><Id>635</Id></Event><Event><Description>UNDELIVERED - PROCESSES FOR LOCAL DISPOSAL</Description><Id>636</Id></Event><Event><Description>MISSENT</Description><Id>640</Id></Event><Event><Description>DEAD LETTER</Description><Id>650</Id></Event><Event><Description>MIS-SHIPPED</Description><Id>670</Id></Event><Event><Description>DELIVERY STATUS NOT UPDATED</Description><Id>699</Id></Event><Event><Description>NO SUCH NUMBER</Description><Id>700</Id></Event><Event><Description>INSUFFICIENT ADDRESS</Description><Id>710</Id></Event><Event><Description>MOVED</Description><Id>720</Id></Event><Event><Description>FORWARD EXPIRED</Description><Id>730</Id></Event><Event><Description>ADDRESSEE UNKNOWN</Description><Id>740</Id></Event><Event><Description>VACANT</Description><Id>750</Id></Event><Event><Description>UNCLAIMED</Description><Id>760</Id></Event><Event><Description>DECEASED</Description><Id>770</Id></Event><Event><Description>RETURN TO SENDER</Description><Id>800</Id></Event><Event><Description>RETURNED, INSUFFICIENT POSTAGE</Description><Id>801</Id></Event><Event><Description>RETURNED, SERVICE NOT AVAILABLE</Description><Id>802</Id></Event><Event><Description>RETURNED, INCORRECT LABEL</Description><Id>803</Id></Event><Event><Description>RETURNED TO SENDER</Description><Id>804</Id></Event></Events></Data></Response>
149
+ http_version:
150
+ recorded_at: Wed, 04 Mar 2015 05:26:15 GMT
151
+ - request:
152
+ method: get
153
+ uri: https://api.dhlglobalmail.com/v1/locations/5325183?access_token=sP0WTuBUBte2N1UzcBy0ZQOjAptsjXKvnavkx43Nyzk%2BbQPTF80%2BnJiYoEWCdFQUQQW3wv4jQx8WNrGd2JEAEXYSrip77np4F7X2icSxAgorjRdabr7d1jjktOI1Z4487KpkdJes%2BI4byatWZRX7Uig7v/VTsztthTk8IUrWowttiEBQnw0/NjRe4drp3mFAzlzrOYtroRjZ13eqE6l%2BnQ==&client_id=<CLIENT_ID>
154
+ body:
155
+ encoding: US-ASCII
156
+ string: ''
157
+ headers:
158
+ Accept:
159
+ - application/xml
160
+ Content-Type:
161
+ - application/xml;charset=UTF-8
162
+ User-Agent:
163
+ - Faraday v0.9.1
164
+ Accept-Encoding:
165
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
166
+ response:
167
+ status:
168
+ code: 200
169
+ message: OK
170
+ headers:
171
+ Transfer-Encoding:
172
+ - chunked
173
+ Content-Type:
174
+ - application/xml;charset=UTF-8
175
+ Server:
176
+ - Microsoft-IIS/7.5
177
+ X-Powered-By:
178
+ - WEB6
179
+ Date:
180
+ - Wed, 04 Mar 2015 05:26:00 GMT
181
+ body:
182
+ encoding: UTF-8
183
+ string: |-
184
+ <?xml version="1.0" encoding="UTF-8"?>
185
+ <Response><Meta><Timestamp>2015-03-04T00:26:01-05:00</Timestamp><Code>200</Code></Meta><Data><Location><State>WA</State><Country>US</Country><PickupName>PNC FULFILLMENT</PickupName><Account>5115902</Account><Contact>BRIAN</Contact><Address2>STE 103</Address2><Phone>360-778-1528</Phone><PostalCode>98230</PostalCode><Address1>288 MARTIN STREET</Address1><Email>orders@pncfulfillment.com</Email><City>BLAINE</City><Pickup>5325183</Pickup><Fax/></Location></Data></Response>
186
+ http_version:
187
+ recorded_at: Wed, 04 Mar 2015 05:26:16 GMT
188
+ - request:
189
+ method: get
190
+ uri: https://api.dhlglobalmail.com/v1/locations?access_token=sP0WTuBUBte2N1UzcBy0ZQOjAptsjXKvnavkx43Nyzk%2BbQPTF80%2BnJiYoEWCdFQUQQW3wv4jQx8WNrGd2JEAEXYSrip77np4F7X2icSxAgorjRdabr7d1jjktOI1Z4487KpkdJes%2BI4byatWZRX7Uig7v/VTsztthTk8IUrWowttiEBQnw0/NjRe4drp3mFAzlzrOYtroRjZ13eqE6l%2BnQ==&client_id=<CLIENT_ID>
191
+ body:
192
+ encoding: US-ASCII
193
+ string: ''
194
+ headers:
195
+ Accept:
196
+ - application/xml
197
+ Content-Type:
198
+ - application/xml;charset=UTF-8
199
+ User-Agent:
200
+ - Faraday v0.9.1
201
+ Accept-Encoding:
202
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
203
+ response:
204
+ status:
205
+ code: 200
206
+ message: OK
207
+ headers:
208
+ Transfer-Encoding:
209
+ - chunked
210
+ Content-Type:
211
+ - application/xml;charset=UTF-8
212
+ Server:
213
+ - Microsoft-IIS/7.5
214
+ X-Powered-By:
215
+ - WEB7
216
+ Date:
217
+ - Wed, 04 Mar 2015 05:26:03 GMT
218
+ body:
219
+ encoding: UTF-8
220
+ string: |-
221
+ <?xml version="1.0" encoding="UTF-8"?>
222
+ <Response><Meta><Timestamp>2015-03-04T00:26:03-05:00</Timestamp><Code>200</Code></Meta><Data><Locations><Location><State>WA</State><Country>US</Country><PickupName>PNC FULFILLMENT</PickupName><Account>5115902</Account><Contact>BRIAN</Contact><Address2>STE 103</Address2><Phone>360-778-1528</Phone><PostalCode>98230</PostalCode><Address1>288 MARTIN STREET</Address1><Email>orders@pncfulfillment.com</Email><City>BLAINE</City><Pickup>5325183</Pickup><Fax/></Location></Locations></Data></Response>
223
+ http_version:
224
+ recorded_at: Wed, 04 Mar 2015 05:26:17 GMT
225
+ - request:
226
+ method: post
227
+ uri: https://api.dhlglobalmail.com/v1/label/US/5325183/zpl?access_token=sP0WTuBUBte2N1UzcBy0ZQOjAptsjXKvnavkx43Nyzk%2BbQPTF80%2BnJiYoEWCdFQUQQW3wv4jQx8WNrGd2JEAEXYSrip77np4F7X2icSxAgorjRdabr7d1jjktOI1Z4487KpkdJes%2BI4byatWZRX7Uig7v/VTsztthTk8IUrWowttiEBQnw0/NjRe4drp3mFAzlzrOYtroRjZ13eqE6l%2BnQ==&client_id=<CLIENT_ID>
228
+ body:
229
+ encoding: UTF-8
230
+ string: <?xml version="1.1" encoding="UTF-8"?><EncodeRequest><CustomerId>5325183</CustomerId><BatchRef>1425446777562</BatchRef><HalfOnError>false</HalfOnError><RejectAllOnError>true</RejectAllOnError><MpuList><Mpu><PackageId>1</PackageId><PackageRef><PrintFlag>true</PrintFlag><LabelText>PKG
231
+ ID</LabelText></PackageRef><ConsigneeAddress><StandardAddress><Name>TEST</Name><Firm></Firm><Address1>916
232
+ PEACE PORTAL DR</Address1><Address2></Address2><City>BLAINE</City><State>WA</State><Zip>98230</Zip><CountryCode>US</CountryCode></StandardAddress></ConsigneeAddress><ReturnAddress><StandardAddress><Name>TEST</Name><Firm></Firm><Address1>916
233
+ PEACE PORTAL DR</Address1><Address2></Address2><City>BLAINE</City><State>WA</State><Zip>98230</Zip><CountryCode>US</CountryCode></StandardAddress></ReturnAddress><OrderedProductCode>83</OrderedProductCode><Weight><Value>1</Value><Unit>LB</Unit></Weight><BillingRef1/><BillingRef2/><FacilityCode>USSEA1</FacilityCode><ExpectedShipDate>20150305</ExpectedShipDate><MailTypeCode>7</MailTypeCode></Mpu></MpuList></EncodeRequest>
234
+ headers:
235
+ Accept:
236
+ - application/xml
237
+ Content-Type:
238
+ - application/xml;charset=UTF-8
239
+ User-Agent:
240
+ - Faraday v0.9.1
241
+ Accept-Encoding:
242
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
243
+ response:
244
+ status:
245
+ code: 200
246
+ message: OK
247
+ headers:
248
+ Transfer-Encoding:
249
+ - chunked
250
+ Content-Type:
251
+ - application/xml;charset=UTF-8
252
+ Server:
253
+ - Microsoft-IIS/7.5
254
+ X-Powered-By:
255
+ - WEB7
256
+ Date:
257
+ - Wed, 04 Mar 2015 05:26:04 GMT
258
+ body:
259
+ encoding: UTF-8
260
+ string: |-
261
+ <?xml version="1.0" encoding="UTF-8"?><Response><Meta><Code>200</Code><Timestamp>2015-03-04T00:26:04-05:00</Timestamp><NumAccepted>1</NumAccepted><NumRejected>0</NumRejected><NumUnprocessed>0</NumUnprocessed></Meta><Data><MpuList><Mpu><PackageId>1</PackageId><PackageRef><PrintFlag>true</PrintFlag><LabelText>PKG ID</LabelText></PackageRef><ConsigneeAddress><StandardAddress><Name>TEST</Name><Firm/><Address1>916 PEACE PORTAL DR</Address1><Address2/><City>BLAINE</City><State>WA</State><Zip>98230</Zip><CountryCode>US</CountryCode></StandardAddress></ConsigneeAddress><ReturnAddress><StandardAddress><Name>TEST</Name><Firm/><Address1>916 PEACE PORTAL DR</Address1><Address2/><City>BLAINE</City><State>WA</State><Zip>98230</Zip><CountryCode>US</CountryCode></StandardAddress></ReturnAddress><OrderedProductCode>83</OrderedProductCode><Weight><Unit>LB</Unit><Value>1</Value></Weight><BillingRef1/><BillingRef2/><MailTypeCode>7</MailTypeCode><FacilityCode>USSEA1</FacilityCode><ExpectedShipDate>20150305</ExpectedShipDate><ErrorList/><LabelDetail><Impb><Construct>C07</Construct><Value>420982309361269903500324295866</Value></Impb><ServiceTypeCode>612</ServiceTypeCode><MailTypeCode>7</MailTypeCode><ShipperAddress><StandardAddress><Name>TEST</Name><Firm/><Address1>916 PEACE PORTAL DR</Address1><Address2/><City>BLAINE</City><State>WA</State><Zip>98230</Zip><CountryCode>US</CountryCode></StandardAddress></ShipperAddress><InboundSortCode>J22</InboundSortCode><IntendedReceivingFacility>SEA</IntendedReceivingFacility><OutboundSortCode>17</OutboundSortCode><SortingSetupVersion>2</SortingSetupVersion><ServiceLevel>GRD</ServiceLevel><OrderedProductCode>83</OrderedProductCode><MailBanner>PARCEL SELECT</MailBanner></LabelDetail><LabelZpl>^XA^LH0,30\n
262
+ ^FO395,0^GB310,0,3^FS\n
263
+ ^FO395,0^GB0,150,3^FS\n
264
+ ^FO705,0^GB0,153,3^FS\n
265
+ ^FO395,150^GB310,0,3^FS\n
266
+ ^FO560,30^A0N,20,20^FDUS Postage Paid^FS\n
267
+ ^FO580,52^A0N,20,20^FDGlobal Mail^FS\n
268
+ ^FO610,74^A0N,20,20^FDeVS^FS\n
269
+ ^FO555,0^GB0,100,3^FS\n
270
+ ^FO450,0^GB0,100,3^FS\n
271
+ ^FO395,100^GB310,0,3^FS\n
272
+ ^FO575,100^GB0,50,3^FS\n
273
+ ^FO640,100^GB0,25,3^FS\n
274
+ ^FO575,125^GB130,0,3^FS\n
275
+ ^FO30,0^A0N,24,25^FDPARCEL SELECT^FS\n
276
+ ^FO20,30^A0N,25,30^FDTime Sensitive Material^FS\n
277
+ ^FO70,55^A0N,24,22^FD^FS\n
278
+ ^FO430,160^A0N,24,22^FD^FS\n
279
+ ^FO480,40^A0N,48,48^FD17^FS\n
280
+ ^FO480,110^A0N,48,48^FDJ22^FS\n
281
+ ^FO610,130^A0N,20,30^FD98230^FS\n
282
+ ^FO590,105^A0N,20,20^FDSEA^FS\n
283
+ ^FO650,105^A0N,20,20^FD7-2^FS\n
284
+ ^FO30,180^BY2^B2N,40,N,N,N^FD4120403551837853^FS\n
285
+ ^FO30,235^A0N,22,22^FDDHLGM#:4120403551837853^FS\n
286
+ ^FO30,255^GB770,0,3^FS\n
287
+ ^FO50,270^A0N,24,24^FDTEST^FS\n
288
+ ^FO50,295^A0N,24,24^FD916 PEACE PORTAL DR^FS\n
289
+ ^FO50,320^A0N,24,24^FDBLAINE WA 98230^FS\n
290
+ ^FO50,345^A0N,24,24^FD^FS\n
291
+ ^FO200,540^A0N,30,30^FDTEST^FS\n
292
+ ^FO200,570^A0N,30,30^FD916 PEACE PORTAL DR^FS\n
293
+ ^FO200,605^A0N,30,30^FDBLAINE WA 98230^FS\n
294
+ ^FS\n
295
+ ^FO200,635^A0N,30,30^FD^FS\n
296
+ ^FS\n^FO30,700^GB770,0,10^FS\n
297
+ ^FO180,730^A0N,44,44^FDUSPS TRACKING #eVS^FS\n
298
+ ^FO65,815^BY3\n
299
+ ^BCN,160,N^FD&gt;;&gt;842098230&gt;;&gt;89361269903500324295866,&gt;;^FS\n
300
+ ^FO180,1015^A0N,32,32^FD9361 2699 0350 0324 2958 66^FS\n
301
+ ^FO30,1065^GB770,0,10^FS\n
302
+ ^FO230,1100^BY2^B2N,40,N,N,N^FD1^FS\n
303
+ ^FO250,1150^A0N,22,22^FDPKG ID 1^FS\n^FO400,10^A0R,42,42^FDGRD^FS
304
+ ^PQ1^XZ</LabelZpl><MailItemId>4120403551837853</MailItemId><DelconFromImpb>9361269903500324295866</DelconFromImpb><ServiceEndorsement/><DgCategory/></Mpu></MpuList></Data></Response>
305
+ http_version:
306
+ recorded_at: Wed, 04 Mar 2015 05:26:18 GMT
307
+ - request:
308
+ method: get
309
+ uri: https://api.dhlglobalmail.com/v1/products/73?access_token=sP0WTuBUBte2N1UzcBy0ZQOjAptsjXKvnavkx43Nyzk%2BbQPTF80%2BnJiYoEWCdFQUQQW3wv4jQx8WNrGd2JEAEXYSrip77np4F7X2icSxAgorjRdabr7d1jjktOI1Z4487KpkdJes%2BI4byatWZRX7Uig7v/VTsztthTk8IUrWowttiEBQnw0/NjRe4drp3mFAzlzrOYtroRjZ13eqE6l%2BnQ==&client_id=<CLIENT_ID>
310
+ body:
311
+ encoding: US-ASCII
312
+ string: ''
313
+ headers:
314
+ Accept:
315
+ - application/xml
316
+ Content-Type:
317
+ - application/xml;charset=UTF-8
318
+ User-Agent:
319
+ - Faraday v0.9.1
320
+ Accept-Encoding:
321
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
322
+ response:
323
+ status:
324
+ code: 200
325
+ message: OK
326
+ headers:
327
+ Transfer-Encoding:
328
+ - chunked
329
+ Content-Type:
330
+ - application/xml;charset=UTF-8
331
+ Server:
332
+ - Microsoft-IIS/7.5
333
+ X-Powered-By:
334
+ - WEB6
335
+ Date:
336
+ - Wed, 04 Mar 2015 05:26:04 GMT
337
+ body:
338
+ encoding: UTF-8
339
+ string: |-
340
+ <?xml version="1.0" encoding="UTF-8"?>
341
+ <Response><Meta><Timestamp>2015-03-04T00:26:04-05:00</Timestamp><Code>200</Code></Meta><Data><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>SM Flats Ground</Name><Id>73</Id></Product></Data></Response>
342
+ http_version:
343
+ recorded_at: Wed, 04 Mar 2015 05:26:19 GMT
344
+ - request:
345
+ method: get
346
+ uri: https://api.dhlglobalmail.com/v1/products?access_token=sP0WTuBUBte2N1UzcBy0ZQOjAptsjXKvnavkx43Nyzk%2BbQPTF80%2BnJiYoEWCdFQUQQW3wv4jQx8WNrGd2JEAEXYSrip77np4F7X2icSxAgorjRdabr7d1jjktOI1Z4487KpkdJes%2BI4byatWZRX7Uig7v/VTsztthTk8IUrWowttiEBQnw0/NjRe4drp3mFAzlzrOYtroRjZ13eqE6l%2BnQ==&client_id=<CLIENT_ID>
347
+ body:
348
+ encoding: US-ASCII
349
+ string: ''
350
+ headers:
351
+ Accept:
352
+ - application/xml
353
+ Content-Type:
354
+ - application/xml;charset=UTF-8
355
+ User-Agent:
356
+ - Faraday v0.9.1
357
+ Accept-Encoding:
358
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
359
+ response:
360
+ status:
361
+ code: 200
362
+ message: OK
363
+ headers:
364
+ Transfer-Encoding:
365
+ - chunked
366
+ Content-Type:
367
+ - application/xml;charset=UTF-8
368
+ Server:
369
+ - Microsoft-IIS/7.5
370
+ X-Powered-By:
371
+ - WEB4
372
+ Date:
373
+ - Wed, 04 Mar 2015 05:26:05 GMT
374
+ body:
375
+ encoding: UTF-8
376
+ string: |-
377
+ <?xml version="1.0" encoding="UTF-8"?>
378
+ <Response><Meta><Timestamp>2015-03-04T00:26:05-05:00</Timestamp><Code>200</Code></Meta><Data><Products><Product><Category>Priority</Category><Class>International</Class><Name>DHL GlobalMail Packet Plus Crossborder</Name><Id>500901</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>DHL GlobalMail Packet Plus Domestic</Name><Id>500900</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>DHL GlobalMail Parcel Direct Priority Crossborder</Name><Id>500905</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>DHL GlobalMail Parcel Direct Priority Domestic</Name><Id>500904</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>DHL Parcel Premium</Name><Id>631</Id></Product><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>Easy Return Ground</Name><Id>532</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>Easy Return Light</Name><Id>531</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>Easy Return Plus</Name><Id>491</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>First Class Flats</Name><Id>262</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>First Class Parcels</Name><Id>261</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>First Class Product</Name><Id>71</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Business Canada Post Lettermail</Name><Id>43</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Business Priority</Name><Id>34</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Business Standard</Name><Id>35</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Business USPS IPA</Name><Id>41</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Business USPS ISAL</Name><Id>42</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Direct Canada Post Admail</Name><Id>46</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Fulfillment Publication Priority</Name><Id>52</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Fulfillment Publication Standard</Name><Id>53</Id></Product><Product><Category>Other Services</Category><Class>International</Class><Name>GM Other</Name><Id>69</Id></Product><Product><Category>Clearance</Category><Class>International</Class><Name>GM Packet Manifest Clearance</Name><Id>500940</Id></Product><Product><Category>Clearance</Category><Class>International</Class><Name>GM Packet Plus Manifest Clearance</Name><Id>500941</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Packet Plus Priority</Name><Id>29</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Packet Plus Priority (Relax E-File)</Name><Id>500000</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Packet Plus Priority (Relax E-File) Crossborder</Name><Id>500902</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Packet Plus Priority (Relax E-File) Domestic</Name><Id>500903</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Packet Plus Standard Cross Border</Name><Id>500924</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Packet Plus Standard Domestic</Name><Id>500923</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Packet Priority</Name><Id>27</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Packet Standard</Name><Id>28</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Packet Standard Cross Border</Name><Id>500926</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Packet Standard Domestic</Name><Id>500925</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Packet USPS IPA</Name><Id>56</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Packet USPS ISAL</Name><Id>57</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Parcel Canada Parcel Standard</Name><Id>59</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Parcel Direct</Name><Id>103111</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Parcel Direct Expedited Cross Border</Name><Id>500970</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Parcel Direct Expedited Domestic</Name><Id>500969</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Parcel Direct Express</Name><Id>58</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Parcel Direct Inbound Priority - Formal</Name><Id>23</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Parcel Direct Inbound Priority - Informal</Name><Id>21</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Parcel Direct Inbound Standard - Formal</Name><Id>24</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Parcel Direct Inbound Standard - Informal</Name><Id>22</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Parcel Direct Plus</Name><Id>103113</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Parcel Direct Priority</Name><Id>60</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Parcel Priority</Name><Id>54</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Parcel Standard</Name><Id>55</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Parcel Standard Cross Border</Name><Id>500930</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Parcel Standard Domestic</Name><Id>500929</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Publication Canada Publication</Name><Id>51</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>GM Publication Priority</Name><Id>47</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>GM Publication Standard</Name><Id>48</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>Priority Mail</Name><Id>70</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>SM BPM Expedited</Name><Id>76</Id></Product><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>SM BPM Ground</Name><Id>77</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>SM Catalog BPM Expedited</Name><Id>78</Id></Product><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>SM Catalog BPM Ground</Name><Id>79</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>SM Catalog Flats Expedited</Name><Id>74</Id></Product><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>SM Catalog Flats Ground</Name><Id>75</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>SM Flats Expedited</Name><Id>72</Id></Product><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>SM Flats Ground</Name><Id>73</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>SM Marketing Parcel Expedited</Name><Id>384</Id></Product><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>SM Marketing Parcel Ground</Name><Id>383</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>SM Media Mail Expedited</Name><Id>284</Id></Product><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>SM Media Mail Ground</Name><Id>80</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>SM Parcel Plus Expedited</Name><Id>36</Id></Product><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>SM Parcel Plus Ground</Name><Id>83</Id></Product><Product><Category>Expedited</Category><Class>DomesticUS</Class><Name>SM Parcels Expedited</Name><Id>81</Id></Product><Product><Category>Ground</Category><Class>DomesticUS</Class><Name>SM Parcels Ground</Name><Id>82</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>Workshare GM Business Priority</Name><Id>44</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>Workshare GM Business Standard</Name><Id>45</Id></Product><Product><Category>Priority</Category><Class>International</Class><Name>Workshare GM Packet Priority</Name><Id>25</Id></Product><Product><Category>Standard</Category><Class>International</Class><Name>Workshare GM Packet Standard</Name><Id>26</Id></Product></Products></Data></Response>
379
+ http_version:
380
+ recorded_at: Wed, 04 Mar 2015 05:26:20 GMT
381
+ recorded_with: VCR 2.9.3