speedy-bg 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +3 -0
  3. data/CODE_OF_CONDUCT.md +134 -0
  4. data/CONTRIBUTING.md +67 -0
  5. data/LICENSE.txt +21 -0
  6. data/README.md +150 -0
  7. data/SECURITY.md +29 -0
  8. data/docs/API.md +740 -0
  9. data/docs/RESPONSE_CONTRACTS.md +55 -0
  10. data/docs/VCR.md +161 -0
  11. data/docs/schema-notes.md +38 -0
  12. data/lib/speedy/camel_case_middleware.rb +71 -0
  13. data/lib/speedy/client.rb +100 -0
  14. data/lib/speedy/client_resources.rb +776 -0
  15. data/lib/speedy/collection.rb +58 -0
  16. data/lib/speedy/error.rb +29 -0
  17. data/lib/speedy/model.rb +92 -0
  18. data/lib/speedy/models/calculation/address_location.rb +16 -0
  19. data/lib/speedy/models/calculation/calculation_content.rb +15 -0
  20. data/lib/speedy/models/calculation/calculation_recipient.rb +15 -0
  21. data/lib/speedy/models/calculation/calculation_result.rb +19 -0
  22. data/lib/speedy/models/calculation/calculation_sender.rb +16 -0
  23. data/lib/speedy/models/calculation/calculation_service.rb +16 -0
  24. data/lib/speedy/models/clients/client.rb +21 -0
  25. data/lib/speedy/models/clients/cod_contract_info.rb +16 -0
  26. data/lib/speedy/models/clients/cod_international_annex.rb +12 -0
  27. data/lib/speedy/models/clients/contract_info.rb +16 -0
  28. data/lib/speedy/models/clients/requirement.rb +12 -0
  29. data/lib/speedy/models/clients/special_delivery_requirements.rb +12 -0
  30. data/lib/speedy/models/common/address.rb +36 -0
  31. data/lib/speedy/models/error.rb +37 -0
  32. data/lib/speedy/models/location/address_nomenclature_type.rb +12 -0
  33. data/lib/speedy/models/location/block.rb +15 -0
  34. data/lib/speedy/models/location/complex.rb +23 -0
  35. data/lib/speedy/models/location/country.rb +25 -0
  36. data/lib/speedy/models/location/find_office_response.rb +12 -0
  37. data/lib/speedy/models/location/find_site_response.rb +12 -0
  38. data/lib/speedy/models/location/get_office_response.rb +12 -0
  39. data/lib/speedy/models/location/get_site_response.rb +12 -0
  40. data/lib/speedy/models/location/office.rb +41 -0
  41. data/lib/speedy/models/location/office_result.rb +13 -0
  42. data/lib/speedy/models/location/office_working_time_schedule.rb +15 -0
  43. data/lib/speedy/models/location/point_of_interest.rb +22 -0
  44. data/lib/speedy/models/location/postcode.rb +12 -0
  45. data/lib/speedy/models/location/routing_information.rb +14 -0
  46. data/lib/speedy/models/location/site.rb +30 -0
  47. data/lib/speedy/models/location/state.rb +17 -0
  48. data/lib/speedy/models/location/street.rb +23 -0
  49. data/lib/speedy/models/location/tour.rb +14 -0
  50. data/lib/speedy/models/payments/payout.rb +20 -0
  51. data/lib/speedy/models/payments/payout_details.rb +23 -0
  52. data/lib/speedy/models/pickup/pickup_order.rb +16 -0
  53. data/lib/speedy/models/pickup/terms_response.rb +12 -0
  54. data/lib/speedy/models/print/extended_print_response.rb +13 -0
  55. data/lib/speedy/models/print/label_info.rb +19 -0
  56. data/lib/speedy/models/print/label_info_response.rb +12 -0
  57. data/lib/speedy/models/print/parcel_to_print_additional_barcode.rb +14 -0
  58. data/lib/speedy/models/print/print_response.rb +12 -0
  59. data/lib/speedy/models/response.rb +13 -0
  60. data/lib/speedy/models/services/additional_courier_service.rb +11 -0
  61. data/lib/speedy/models/services/additional_courier_services.rb +21 -0
  62. data/lib/speedy/models/services/courier_service.rb +19 -0
  63. data/lib/speedy/models/services/extended_courier_service.rb +13 -0
  64. data/lib/speedy/models/shipments/bank_account.rb +12 -0
  65. data/lib/speedy/models/shipments/barcode_information.rb +20 -0
  66. data/lib/speedy/models/shipments/cod_payment.rb +12 -0
  67. data/lib/speedy/models/shipments/content.rb +20 -0
  68. data/lib/speedy/models/shipments/create_shipment_response.rb +16 -0
  69. data/lib/speedy/models/shipments/created_shipment_parcel.rb +14 -0
  70. data/lib/speedy/models/shipments/external_carrier_parcel_number.rb +12 -0
  71. data/lib/speedy/models/shipments/goods_item.rb +16 -0
  72. data/lib/speedy/models/shipments/money_transfer_premium.rb +13 -0
  73. data/lib/speedy/models/shipments/parcel.rb +22 -0
  74. data/lib/speedy/models/shipments/payment.rb +16 -0
  75. data/lib/speedy/models/shipments/primary_shipment.rb +12 -0
  76. data/lib/speedy/models/shipments/recipient.rb +21 -0
  77. data/lib/speedy/models/shipments/return_amounts.rb +11 -0
  78. data/lib/speedy/models/shipments/secondary_shipment.rb +18 -0
  79. data/lib/speedy/models/shipments/sender.rb +21 -0
  80. data/lib/speedy/models/shipments/shipment.rb +28 -0
  81. data/lib/speedy/models/shipments/shipment_additional_services.rb +17 -0
  82. data/lib/speedy/models/shipments/shipment_address.rb +10 -0
  83. data/lib/speedy/models/shipments/shipment_cod_additional_service.rb +20 -0
  84. data/lib/speedy/models/shipments/shipment_cod_fiscal_receipt_item.rb +14 -0
  85. data/lib/speedy/models/shipments/shipment_content.rb +24 -0
  86. data/lib/speedy/models/shipments/shipment_declared_value_additional_service.rb +13 -0
  87. data/lib/speedy/models/shipments/shipment_delivery.rb +14 -0
  88. data/lib/speedy/models/shipments/shipment_discount_card_id.rb +12 -0
  89. data/lib/speedy/models/shipments/shipment_electronic_return_receipt_additional_service.rb +14 -0
  90. data/lib/speedy/models/shipments/shipment_obpd.rb +13 -0
  91. data/lib/speedy/models/shipments/shipment_parcel.rb +23 -0
  92. data/lib/speedy/models/shipments/shipment_parcel_number.rb +12 -0
  93. data/lib/speedy/models/shipments/shipment_parcel_ref.rb +13 -0
  94. data/lib/speedy/models/shipments/shipment_parcel_size.rb +13 -0
  95. data/lib/speedy/models/shipments/shipment_payment.rb +17 -0
  96. data/lib/speedy/models/shipments/shipment_phone_number.rb +12 -0
  97. data/lib/speedy/models/shipments/shipment_price.rb +23 -0
  98. data/lib/speedy/models/shipments/shipment_price_amount.rb +13 -0
  99. data/lib/speedy/models/shipments/shipment_recipient.rb +14 -0
  100. data/lib/speedy/models/shipments/shipment_return_additional_services.rb +20 -0
  101. data/lib/speedy/models/shipments/shipment_return_receipt_additional_service.rb +14 -0
  102. data/lib/speedy/models/shipments/shipment_return_voucher_additional_service.rb +14 -0
  103. data/lib/speedy/models/shipments/shipment_rod_additional_service.rb +15 -0
  104. data/lib/speedy/models/shipments/shipment_rop_additional_service.rb +12 -0
  105. data/lib/speedy/models/shipments/shipment_rop_additional_service_line.rb +12 -0
  106. data/lib/speedy/models/shipments/shipment_sender.rb +23 -0
  107. data/lib/speedy/models/shipments/shipment_service.rb +17 -0
  108. data/lib/speedy/models/shipments/shipment_swap_additional_service.rb +17 -0
  109. data/lib/speedy/models/shipments/update_shipment_response.rb +10 -0
  110. data/lib/speedy/models/tracking/bulk_tracking_data_file.rb +14 -0
  111. data/lib/speedy/models/tracking/external_carrier_parcel_number_details.rb +13 -0
  112. data/lib/speedy/models/tracking/tracked_parcel.rb +21 -0
  113. data/lib/speedy/models/tracking/tracked_parcel_operation.rb +22 -0
  114. data/lib/speedy/models/tracking/tracked_parcel_operation_additional_info.rb +17 -0
  115. data/lib/speedy/models/tracking/tracked_parcel_operation_additional_info_predict.rb +14 -0
  116. data/lib/speedy/models/tracking/tracked_parcel_operation_additional_info_recipient.rb +14 -0
  117. data/lib/speedy/models/validation/validation_response.rb +14 -0
  118. data/lib/speedy/resource_attributes.rb +87 -0
  119. data/lib/speedy/service_resource.rb +94 -0
  120. data/lib/speedy/services/calculation.rb +22 -0
  121. data/lib/speedy/services/clients.rb +40 -0
  122. data/lib/speedy/services/courier_services.rb +25 -0
  123. data/lib/speedy/services/location/block.rb +32 -0
  124. data/lib/speedy/services/location/complex.rb +39 -0
  125. data/lib/speedy/services/location/country.rb +70 -0
  126. data/lib/speedy/services/location/office.rb +50 -0
  127. data/lib/speedy/services/location/point_of_interest.rb +39 -0
  128. data/lib/speedy/services/location/postcode.rb +25 -0
  129. data/lib/speedy/services/location/site.rb +77 -0
  130. data/lib/speedy/services/location/state.rb +46 -0
  131. data/lib/speedy/services/location/street.rb +39 -0
  132. data/lib/speedy/services/location.rb +11 -0
  133. data/lib/speedy/services/payments.rb +19 -0
  134. data/lib/speedy/services/pickup.rb +38 -0
  135. data/lib/speedy/services/print.rb +58 -0
  136. data/lib/speedy/services/shipments/shipment.rb +120 -0
  137. data/lib/speedy/services/shipments.rb +11 -0
  138. data/lib/speedy/services/tracking.rb +26 -0
  139. data/lib/speedy/services/validation/address.rb +26 -0
  140. data/lib/speedy/services/validation/general.rb +37 -0
  141. data/lib/speedy/services/validation.rb +11 -0
  142. data/lib/speedy/transport_error.rb +17 -0
  143. data/lib/speedy/util.rb +67 -0
  144. data/lib/speedy/version.rb +5 -0
  145. data/lib/speedy-bg.rb +6 -0
  146. data/lib/speedy.rb +203 -0
  147. data/sig/speedy.rbs +374 -0
  148. metadata +227 -0
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class Shipment < Speedy::Model
7
+ collection_key :shipments
8
+
9
+ field :error, type: Speedy::Models::Error
10
+ field :id, type: :string
11
+ field :sender, type: Speedy::Models::Shipments::Sender
12
+ field :recipient, type: Speedy::Models::Shipments::Recipient
13
+ field :service, type: Speedy::Models::Shipments::ShipmentService
14
+ field :content, type: Speedy::Models::Shipments::Content
15
+ field :payment, type: Speedy::Models::Shipments::Payment
16
+ field :shipment_note, type: :string
17
+ field :ref1, type: :string
18
+ field :ref2, type: :string
19
+ field :price, type: Speedy::Models::Shipments::ShipmentPrice
20
+ field :delivery, type: Speedy::Models::Shipments::ShipmentDelivery
21
+ field :primary_shipment, type: Speedy::Models::Shipments::PrimaryShipment
22
+ field :return_shipment_id, type: :string
23
+ field :redirect_shipment_id, type: :string
24
+ field :pending_shipment, type: :boolean
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentAdditionalServices < Speedy::Model
7
+ field :cod, type: Speedy::Models::Shipments::ShipmentCODAdditionalService
8
+ field :declared_value, type: Speedy::Models::Shipments::ShipmentDeclaredValueAdditionalService
9
+ field :fixed_time_delivery, type: :integer
10
+ field :returns, type: Speedy::Models::Shipments::ShipmentReturnAdditionalServices
11
+ field :special_delivery_id, type: :integer
12
+ field :delivery_to_floor, type: :integer
13
+ field :obpd, type: Speedy::Models::Shipments::ShipmentOBPD
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentAddress < Speedy::Models::Common::Address
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentCODAdditionalService < Speedy::Model
7
+ field :amount, type: :float
8
+ field :currency_code, type: :string
9
+ field :payout_to_third_party, type: :boolean
10
+ field :payout_to_logged_client, type: :boolean
11
+ field :processing_type, type: :string
12
+ field :include_shipping_price, type: :boolean
13
+ field :card_payment_forbidden, type: :boolean
14
+ field :fiscal_receipt_items,
15
+ type: :array,
16
+ of: Speedy::Models::Shipments::ShipmentCODFiscalReceiptItem
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentCODFiscalReceiptItem < Speedy::Model
7
+ field :description, type: :string
8
+ field :vat_group, type: :string
9
+ field :amount, type: :float
10
+ field :amount_with_vat, type: :float
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentContent < Speedy::Model
7
+ field :parcels_count, type: :integer
8
+ field :total_weight, type: :float
9
+ field :contents, type: :string
10
+ field :package, type: :string
11
+ field :documents, type: :boolean
12
+ field :palletized, type: :boolean
13
+ field :parcels, type: :array, of: Speedy::Models::Shipments::ShipmentParcel
14
+ field :pending_parcels, type: :boolean
15
+ field :excise_goods, type: :boolean
16
+ field :lq, type: :boolean
17
+ field :uit_code, type: :string
18
+ field :goods_value, type: :float
19
+ field :goods_value_currency_code, type: :string
20
+ field :print_additional_barcode, type: Speedy::Models::Print::ParcelToPrintAdditionalBarcode
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentDeclaredValueAdditionalService < Speedy::Model
7
+ field :amount, type: :float
8
+ field :fragile, type: :boolean
9
+ field :ignore_if_not_applicable, type: :boolean
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentDelivery < Speedy::Model
7
+ field :deadline, type: :string
8
+ field :delivery_date_time, type: :string
9
+ field :consignee, type: :string
10
+ field :delivery_note, type: :string
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentDiscountCardId < Speedy::Model
7
+ field :contract_id, type: :integer
8
+ field :card_id, type: :integer
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentElectronicReturnReceiptAdditionalService < Speedy::Model
7
+ field :recipient_emails, type: :array
8
+ field :third_party_payer, type: :boolean
9
+ field :return_to_client_id, type: :integer
10
+ field :return_to_office_id, type: :integer
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentOBPD < Speedy::Model
7
+ field :option, type: :string
8
+ field :return_shipment_service_id, type: :integer
9
+ field :return_shipment_payer, type: :string
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentParcel < Speedy::Model
7
+ field :id, type: :string
8
+ field :seq_no, type: :integer
9
+ field :package_unique_number, type: :integer
10
+ field :size, type: Speedy::Models::Shipments::ShipmentParcelSize
11
+ field :weight, type: :float
12
+ field :pickup_external_carrier_parcel_number,
13
+ type: Speedy::Models::Shipments::ExternalCarrierParcelNumber
14
+ field :delivery_external_carrier_parcel_number,
15
+ type: Speedy::Models::Shipments::ExternalCarrierParcelNumber
16
+ field :ref1, type: :string
17
+ field :ref2, type: :string
18
+ field :goods, type: :array, of: Speedy::Models::Shipments::GoodsItem
19
+ field :print_additional_barcode, type: Speedy::Models::Print::ParcelToPrintAdditionalBarcode
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentParcelNumber < Speedy::Model
7
+ field :id, type: :string
8
+ field :seq_no, type: :integer
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentParcelRef < Speedy::Model
7
+ field :id, type: :string
8
+ field :external_carrier_parcel_number, type: :string
9
+ field :full_barcode, type: :string
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentParcelSize < Speedy::Model
7
+ field :width, type: :integer
8
+ field :height, type: :integer
9
+ field :depth, type: :integer
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentPayment < Speedy::Model
7
+ field :courier_service_payer, type: :string
8
+ field :declared_value_payer, type: :string
9
+ field :package_payer, type: :string
10
+ field :third_party_client_id, type: :integer
11
+ field :discount_card_id, type: Speedy::Models::Shipments::ShipmentDiscountCardId
12
+ field :sender_bank_account, type: Speedy::Models::Shipments::BankAccount
13
+ field :administrative_fee, type: :boolean
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentPhoneNumber < Speedy::Model
7
+ field :number, type: :string
8
+ field :extension, type: :string
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentPrice < Speedy::Model
7
+ field :amount, type: :float
8
+ field :vat, type: :float
9
+ field :total, type: :float
10
+ field :currency, type: :string
11
+ field :details, type: :hash, of: Speedy::Models::Shipments::ShipmentPriceAmount
12
+ field :amount_local, type: :float
13
+ field :vat_local, type: :float
14
+ field :total_local, type: :float
15
+ field :currency_local, type: :string
16
+ field :details_local, type: :hash, of: Speedy::Models::Shipments::ShipmentPriceAmount
17
+ field :currency_exchange_rate_unit, type: :integer
18
+ field :currency_exchange_rate, type: :float
19
+ field :return_amounts, type: Speedy::Models::Shipments::ReturnAmounts
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentPriceAmount < Speedy::Model
7
+ field :amount, type: :float
8
+ field :percent, type: :float
9
+ field :vat_percent, type: :float
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentRecipient < Speedy::Models::Shipments::ShipmentSender
7
+ field :pickup_office_id, type: :integer
8
+ field :pickup_geo_pudo_id, type: :string
9
+ field :auto_select_nearest_office, type: :boolean
10
+ field :auto_select_nearest_office_policy
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentReturnAdditionalServices < Speedy::Model
7
+ field :rod, type: Speedy::Models::Shipments::ShipmentRODAdditionalService
8
+ field :return_receipt,
9
+ type: Speedy::Models::Shipments::ShipmentReturnReceiptAdditionalService
10
+ field :electronic_return_receipt,
11
+ type: Speedy::Models::Shipments::ShipmentElectronicReturnReceiptAdditionalService
12
+ field :swap, type: Speedy::Models::Shipments::ShipmentSWAPAdditionalService
13
+ field :rop, type: Speedy::Models::Shipments::ShipmentROPAdditionalService
14
+ field :return_voucher,
15
+ type: Speedy::Models::Shipments::ShipmentReturnVoucherAdditionalService
16
+ field :send_back_client_id, type: :integer
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentReturnReceiptAdditionalService < Speedy::Model
7
+ field :enabled, type: :boolean
8
+ field :return_to_client_id, type: :integer
9
+ field :return_to_office_id, type: :integer
10
+ field :third_party_payer, type: :boolean
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentReturnVoucherAdditionalService < Speedy::Model
7
+ field :service_id, type: :integer
8
+ field :payer, type: :string
9
+ field :validity_period, type: :integer
10
+ field :external_return_voucher_id, type: :string
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentRODAdditionalService < Speedy::Model
7
+ field :enabled, type: :boolean
8
+ field :comment, type: :string
9
+ field :return_to_client_id, type: :integer
10
+ field :return_to_office_id, type: :integer
11
+ field :third_party_payer, type: :boolean
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentROPAdditionalService < Speedy::Model
7
+ field :pallets, type: :array, of: Speedy::Models::Shipments::ShipmentROPAdditionalServiceLine
8
+ field :third_party_payer, type: :boolean
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentROPAdditionalServiceLine < Speedy::Model
7
+ field :service_id, type: :integer
8
+ field :parcels_count, type: :integer
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentSender < Speedy::Model
7
+ field :client_id, type: :integer
8
+ field :phone1, type: Speedy::Models::Shipments::ShipmentPhoneNumber
9
+ field :phone2, type: Speedy::Models::Shipments::ShipmentPhoneNumber
10
+ field :phone3, type: Speedy::Models::Shipments::ShipmentPhoneNumber
11
+ field :client_name, type: :string
12
+ field :contact_name, type: :string
13
+ field :object_name, type: :string
14
+ field :email, type: :string
15
+ field :private_person, type: :boolean
16
+ field :address, type: Speedy::Models::Shipments::ShipmentAddress
17
+ field :dropoff_office_id, type: :integer
18
+ field :dropoff_geo_pudo_id, type: :string
19
+ field :dropoff, type: :boolean
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentService < Speedy::Model
7
+ field :pickup_date, type: :string
8
+ field :service_id, type: :integer
9
+ field :additional_services, type: Speedy::Models::Shipments::ShipmentAdditionalServices
10
+ field :deferred_days, type: :integer
11
+ field :saturday_delivery, type: :boolean
12
+ field :auto_adjust_pickup_date, type: :boolean
13
+ field :delivery_limit_violation_auto_adjustment
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class ShipmentSWAPAdditionalService < Speedy::Model
7
+ field :service_id, type: :integer
8
+ field :parcels_count, type: :integer
9
+ field :declared_value, type: :float
10
+ field :fragile, type: :boolean
11
+ field :return_to_client_id, type: :integer
12
+ field :return_to_office_id, type: :integer
13
+ field :third_party_payer, type: :boolean
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Shipments
6
+ class UpdateShipmentResponse < CreateShipmentResponse
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Tracking
6
+ class BulkTrackingDataFile < Speedy::Model
7
+ collection_key :files
8
+
9
+ field :id, type: :integer
10
+ field :url, type: :string
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Tracking
6
+ class ExternalCarrierParcelNumberDetails < Speedy::Model
7
+ field :external_carrier_id, type: :integer
8
+ field :external_carrier_name, type: :string
9
+ field :track_and_trace_url, type: :string
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Tracking
6
+ class TrackedParcel < Speedy::Model
7
+ collection_key :parcels
8
+
9
+ field :parcel_id, type: :string
10
+ field :external_carrier_parcel_numbers, type: :array
11
+ field :operations, type: :array, of: Speedy::Models::Tracking::TrackedParcelOperation
12
+ field :error, type: Speedy::Models::Error
13
+ field :ref, type: :string
14
+ field :track_phase, type: :string
15
+ field :external_carrier_parcel_numbers_details,
16
+ type: :hash,
17
+ of: Speedy::Models::Tracking::ExternalCarrierParcelNumberDetails
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Tracking
6
+ class TrackedParcelOperation < Speedy::Model
7
+ field :date_time, type: :string
8
+ field :operation_code, type: :integer
9
+ field :place, type: :string
10
+ field :description, type: :string
11
+ field :comment, type: :string
12
+ field :exception_codes, type: :array
13
+ field :return_shipment_id, type: :string
14
+ field :redirect_shipment_id, type: :string
15
+ field :consignee, type: :string
16
+ field :pod_image_url, type: :string
17
+ field :additional_info,
18
+ type: Speedy::Models::Tracking::TrackedParcelOperationAdditionalInfo
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Tracking
6
+ class TrackedParcelOperationAdditionalInfo < Speedy::Model
7
+ field :office_url, type: :string
8
+ field :recipient,
9
+ type: Speedy::Models::Tracking::TrackedParcelOperationAdditionalInfoRecipient
10
+ field :unsuccessful_delivery_sticker_image_url, type: :string
11
+ field :pickup_office_type, type: :string
12
+ field :geo_pudo_id, type: :string
13
+ field :predict, type: Speedy::Models::Tracking::TrackedParcelOperationAdditionalInfoPredict
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Tracking
6
+ class TrackedParcelOperationAdditionalInfoPredict < Speedy::Model
7
+ field :predicted_visit_date_time_from, type: :string
8
+ field :predicted_visit_date_time_to, type: :string
9
+ field :included_delay_in_minutes, type: :integer
10
+ field :canceled, type: :boolean
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Tracking
6
+ class TrackedParcelOperationAdditionalInfoRecipient < Speedy::Model
7
+ field :country_id, type: :integer
8
+ field :phone1, type: :string
9
+ field :phone2, type: :string
10
+ field :phone3, type: :string
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Speedy
4
+ module Models
5
+ module Validation
6
+ class ValidationResponse < Speedy::Model
7
+ field :error, type: Speedy::Models::Error
8
+ field :valid, type: :boolean
9
+
10
+ alias valid? valid
11
+ end
12
+ end
13
+ end
14
+ end