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.
- checksums.yaml +7 -0
- data/CHANGELOG.md +3 -0
- data/CODE_OF_CONDUCT.md +134 -0
- data/CONTRIBUTING.md +67 -0
- data/LICENSE.txt +21 -0
- data/README.md +150 -0
- data/SECURITY.md +29 -0
- data/docs/API.md +740 -0
- data/docs/RESPONSE_CONTRACTS.md +55 -0
- data/docs/VCR.md +161 -0
- data/docs/schema-notes.md +38 -0
- data/lib/speedy/camel_case_middleware.rb +71 -0
- data/lib/speedy/client.rb +100 -0
- data/lib/speedy/client_resources.rb +776 -0
- data/lib/speedy/collection.rb +58 -0
- data/lib/speedy/error.rb +29 -0
- data/lib/speedy/model.rb +92 -0
- data/lib/speedy/models/calculation/address_location.rb +16 -0
- data/lib/speedy/models/calculation/calculation_content.rb +15 -0
- data/lib/speedy/models/calculation/calculation_recipient.rb +15 -0
- data/lib/speedy/models/calculation/calculation_result.rb +19 -0
- data/lib/speedy/models/calculation/calculation_sender.rb +16 -0
- data/lib/speedy/models/calculation/calculation_service.rb +16 -0
- data/lib/speedy/models/clients/client.rb +21 -0
- data/lib/speedy/models/clients/cod_contract_info.rb +16 -0
- data/lib/speedy/models/clients/cod_international_annex.rb +12 -0
- data/lib/speedy/models/clients/contract_info.rb +16 -0
- data/lib/speedy/models/clients/requirement.rb +12 -0
- data/lib/speedy/models/clients/special_delivery_requirements.rb +12 -0
- data/lib/speedy/models/common/address.rb +36 -0
- data/lib/speedy/models/error.rb +37 -0
- data/lib/speedy/models/location/address_nomenclature_type.rb +12 -0
- data/lib/speedy/models/location/block.rb +15 -0
- data/lib/speedy/models/location/complex.rb +23 -0
- data/lib/speedy/models/location/country.rb +25 -0
- data/lib/speedy/models/location/find_office_response.rb +12 -0
- data/lib/speedy/models/location/find_site_response.rb +12 -0
- data/lib/speedy/models/location/get_office_response.rb +12 -0
- data/lib/speedy/models/location/get_site_response.rb +12 -0
- data/lib/speedy/models/location/office.rb +41 -0
- data/lib/speedy/models/location/office_result.rb +13 -0
- data/lib/speedy/models/location/office_working_time_schedule.rb +15 -0
- data/lib/speedy/models/location/point_of_interest.rb +22 -0
- data/lib/speedy/models/location/postcode.rb +12 -0
- data/lib/speedy/models/location/routing_information.rb +14 -0
- data/lib/speedy/models/location/site.rb +30 -0
- data/lib/speedy/models/location/state.rb +17 -0
- data/lib/speedy/models/location/street.rb +23 -0
- data/lib/speedy/models/location/tour.rb +14 -0
- data/lib/speedy/models/payments/payout.rb +20 -0
- data/lib/speedy/models/payments/payout_details.rb +23 -0
- data/lib/speedy/models/pickup/pickup_order.rb +16 -0
- data/lib/speedy/models/pickup/terms_response.rb +12 -0
- data/lib/speedy/models/print/extended_print_response.rb +13 -0
- data/lib/speedy/models/print/label_info.rb +19 -0
- data/lib/speedy/models/print/label_info_response.rb +12 -0
- data/lib/speedy/models/print/parcel_to_print_additional_barcode.rb +14 -0
- data/lib/speedy/models/print/print_response.rb +12 -0
- data/lib/speedy/models/response.rb +13 -0
- data/lib/speedy/models/services/additional_courier_service.rb +11 -0
- data/lib/speedy/models/services/additional_courier_services.rb +21 -0
- data/lib/speedy/models/services/courier_service.rb +19 -0
- data/lib/speedy/models/services/extended_courier_service.rb +13 -0
- data/lib/speedy/models/shipments/bank_account.rb +12 -0
- data/lib/speedy/models/shipments/barcode_information.rb +20 -0
- data/lib/speedy/models/shipments/cod_payment.rb +12 -0
- data/lib/speedy/models/shipments/content.rb +20 -0
- data/lib/speedy/models/shipments/create_shipment_response.rb +16 -0
- data/lib/speedy/models/shipments/created_shipment_parcel.rb +14 -0
- data/lib/speedy/models/shipments/external_carrier_parcel_number.rb +12 -0
- data/lib/speedy/models/shipments/goods_item.rb +16 -0
- data/lib/speedy/models/shipments/money_transfer_premium.rb +13 -0
- data/lib/speedy/models/shipments/parcel.rb +22 -0
- data/lib/speedy/models/shipments/payment.rb +16 -0
- data/lib/speedy/models/shipments/primary_shipment.rb +12 -0
- data/lib/speedy/models/shipments/recipient.rb +21 -0
- data/lib/speedy/models/shipments/return_amounts.rb +11 -0
- data/lib/speedy/models/shipments/secondary_shipment.rb +18 -0
- data/lib/speedy/models/shipments/sender.rb +21 -0
- data/lib/speedy/models/shipments/shipment.rb +28 -0
- data/lib/speedy/models/shipments/shipment_additional_services.rb +17 -0
- data/lib/speedy/models/shipments/shipment_address.rb +10 -0
- data/lib/speedy/models/shipments/shipment_cod_additional_service.rb +20 -0
- data/lib/speedy/models/shipments/shipment_cod_fiscal_receipt_item.rb +14 -0
- data/lib/speedy/models/shipments/shipment_content.rb +24 -0
- data/lib/speedy/models/shipments/shipment_declared_value_additional_service.rb +13 -0
- data/lib/speedy/models/shipments/shipment_delivery.rb +14 -0
- data/lib/speedy/models/shipments/shipment_discount_card_id.rb +12 -0
- data/lib/speedy/models/shipments/shipment_electronic_return_receipt_additional_service.rb +14 -0
- data/lib/speedy/models/shipments/shipment_obpd.rb +13 -0
- data/lib/speedy/models/shipments/shipment_parcel.rb +23 -0
- data/lib/speedy/models/shipments/shipment_parcel_number.rb +12 -0
- data/lib/speedy/models/shipments/shipment_parcel_ref.rb +13 -0
- data/lib/speedy/models/shipments/shipment_parcel_size.rb +13 -0
- data/lib/speedy/models/shipments/shipment_payment.rb +17 -0
- data/lib/speedy/models/shipments/shipment_phone_number.rb +12 -0
- data/lib/speedy/models/shipments/shipment_price.rb +23 -0
- data/lib/speedy/models/shipments/shipment_price_amount.rb +13 -0
- data/lib/speedy/models/shipments/shipment_recipient.rb +14 -0
- data/lib/speedy/models/shipments/shipment_return_additional_services.rb +20 -0
- data/lib/speedy/models/shipments/shipment_return_receipt_additional_service.rb +14 -0
- data/lib/speedy/models/shipments/shipment_return_voucher_additional_service.rb +14 -0
- data/lib/speedy/models/shipments/shipment_rod_additional_service.rb +15 -0
- data/lib/speedy/models/shipments/shipment_rop_additional_service.rb +12 -0
- data/lib/speedy/models/shipments/shipment_rop_additional_service_line.rb +12 -0
- data/lib/speedy/models/shipments/shipment_sender.rb +23 -0
- data/lib/speedy/models/shipments/shipment_service.rb +17 -0
- data/lib/speedy/models/shipments/shipment_swap_additional_service.rb +17 -0
- data/lib/speedy/models/shipments/update_shipment_response.rb +10 -0
- data/lib/speedy/models/tracking/bulk_tracking_data_file.rb +14 -0
- data/lib/speedy/models/tracking/external_carrier_parcel_number_details.rb +13 -0
- data/lib/speedy/models/tracking/tracked_parcel.rb +21 -0
- data/lib/speedy/models/tracking/tracked_parcel_operation.rb +22 -0
- data/lib/speedy/models/tracking/tracked_parcel_operation_additional_info.rb +17 -0
- data/lib/speedy/models/tracking/tracked_parcel_operation_additional_info_predict.rb +14 -0
- data/lib/speedy/models/tracking/tracked_parcel_operation_additional_info_recipient.rb +14 -0
- data/lib/speedy/models/validation/validation_response.rb +14 -0
- data/lib/speedy/resource_attributes.rb +87 -0
- data/lib/speedy/service_resource.rb +94 -0
- data/lib/speedy/services/calculation.rb +22 -0
- data/lib/speedy/services/clients.rb +40 -0
- data/lib/speedy/services/courier_services.rb +25 -0
- data/lib/speedy/services/location/block.rb +32 -0
- data/lib/speedy/services/location/complex.rb +39 -0
- data/lib/speedy/services/location/country.rb +70 -0
- data/lib/speedy/services/location/office.rb +50 -0
- data/lib/speedy/services/location/point_of_interest.rb +39 -0
- data/lib/speedy/services/location/postcode.rb +25 -0
- data/lib/speedy/services/location/site.rb +77 -0
- data/lib/speedy/services/location/state.rb +46 -0
- data/lib/speedy/services/location/street.rb +39 -0
- data/lib/speedy/services/location.rb +11 -0
- data/lib/speedy/services/payments.rb +19 -0
- data/lib/speedy/services/pickup.rb +38 -0
- data/lib/speedy/services/print.rb +58 -0
- data/lib/speedy/services/shipments/shipment.rb +120 -0
- data/lib/speedy/services/shipments.rb +11 -0
- data/lib/speedy/services/tracking.rb +26 -0
- data/lib/speedy/services/validation/address.rb +26 -0
- data/lib/speedy/services/validation/general.rb +37 -0
- data/lib/speedy/services/validation.rb +11 -0
- data/lib/speedy/transport_error.rb +17 -0
- data/lib/speedy/util.rb +67 -0
- data/lib/speedy/version.rb +5 -0
- data/lib/speedy-bg.rb +6 -0
- data/lib/speedy.rb +203 -0
- data/sig/speedy.rbs +374 -0
- metadata +227 -0
data/sig/speedy.rbs
ADDED
|
@@ -0,0 +1,374 @@
|
|
|
1
|
+
module Speedy
|
|
2
|
+
type scalar = bool | Integer | Float | String | nil
|
|
3
|
+
type request_value = scalar | Model | Array[request_value] | Hash[Symbol | String, request_value]
|
|
4
|
+
type request_hash = Hash[Symbol | String, request_value]
|
|
5
|
+
type response_value = scalar | Date | Array[response_value] | Hash[Symbol | String, response_value]
|
|
6
|
+
type response_hash = Hash[Symbol, response_value]
|
|
7
|
+
|
|
8
|
+
VERSION: String
|
|
9
|
+
|
|
10
|
+
class Error < StandardError
|
|
11
|
+
attr_reader status: Integer?
|
|
12
|
+
attr_reader error: Models::Error?
|
|
13
|
+
def initialize: (?String? message, ?error: Models::Error?, ?status: Integer?) -> void
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
class TransportError < Error
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
class ConnectionError < TransportError
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
class TimeoutError < TransportError
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
class SSLError < TransportError
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
class Collection[unchecked out Elem] < Object
|
|
29
|
+
include Enumerable[Elem]
|
|
30
|
+
|
|
31
|
+
attr_reader error: Models::Error?
|
|
32
|
+
def error?: () -> bool
|
|
33
|
+
def each: () { (Elem) -> void } -> void
|
|
34
|
+
def to_a: () -> Array[Elem]
|
|
35
|
+
def size: () -> Integer
|
|
36
|
+
def empty?: () -> bool
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
class Model
|
|
40
|
+
attr_reader error: Models::Error?
|
|
41
|
+
def error?: () -> bool
|
|
42
|
+
def to_h: () -> response_hash
|
|
43
|
+
def to_json: (*untyped) -> String
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
class Client
|
|
47
|
+
attr_accessor username: String?
|
|
48
|
+
attr_accessor password: String?
|
|
49
|
+
attr_accessor base_url: String
|
|
50
|
+
attr_accessor language: String?
|
|
51
|
+
attr_accessor client_system_id: Integer?
|
|
52
|
+
attr_accessor debug: bool
|
|
53
|
+
attr_accessor debug_bodies: bool
|
|
54
|
+
attr_accessor debug_logger: untyped
|
|
55
|
+
attr_accessor open_timeout: Numeric
|
|
56
|
+
attr_accessor read_timeout: Numeric
|
|
57
|
+
attr_accessor write_timeout: Numeric
|
|
58
|
+
|
|
59
|
+
def self.configure: () { (Client) -> void } -> Client
|
|
60
|
+
def self.connection: () -> untyped
|
|
61
|
+
def setup_connection!: () -> untyped
|
|
62
|
+
def credentials: () -> request_hash
|
|
63
|
+
|
|
64
|
+
def create_shipment: (**request_value) -> Models::Shipments::CreateShipmentResponse
|
|
65
|
+
def calculate_delivery: (**request_value) -> Collection[Models::Calculation::CalculationResult]
|
|
66
|
+
alias calculate_delivery_fee calculate_delivery
|
|
67
|
+
def shipment_info: (*String) -> Collection[Models::Shipments::Shipment]
|
|
68
|
+
def update_shipment: (id: String, **request_value) -> Models::Shipments::UpdateShipmentResponse
|
|
69
|
+
def update_shipment_properties: (id: String, **request_value) -> Models::Shipments::UpdateShipmentResponse
|
|
70
|
+
def cancel_shipment: (id: String, ?comment: String?) -> Models::Response
|
|
71
|
+
def finalize_shipment: (id: String) -> Models::Shipments::CreateShipmentResponse
|
|
72
|
+
def add_shipment_parcel: (shipment_id: String, parcel: request_hash, **request_value) -> Models::Shipments::CreatedShipmentParcel
|
|
73
|
+
def secondary_shipments: (shipment_id: String, ?types: Array[String]?) -> Collection[Models::Shipments::SecondaryShipment]
|
|
74
|
+
def find_parcels_by_reference: (ref: String, search_in_ref: Integer, **request_value) -> Array[String]
|
|
75
|
+
def hand_over_to_courier: (parcels: Array[request_hash]) -> Models::Response
|
|
76
|
+
def hand_over_to_midway_carrier: (parcels: Array[request_hash]) -> Models::Response
|
|
77
|
+
def barcode_information: (parcel: request_hash) -> Models::Shipments::BarcodeInformation
|
|
78
|
+
def track_shipments: (parcels: Array[request_hash], ?last_operation_only: bool?) -> Collection[Models::Tracking::TrackedParcel]
|
|
79
|
+
def bulk_tracking_files: (last_processed_file_id: Integer) -> Collection[Models::Tracking::BulkTrackingDataFile]
|
|
80
|
+
def courier_services: (?date: String?) -> Collection[Models::Services::CourierService]
|
|
81
|
+
def destination_services: (sender: request_hash, recipient: request_hash, ?date: String?) -> Collection[Models::Services::ExtendedCourierService]
|
|
82
|
+
def request_pickup: (**request_value) -> Collection[Models::Pickup::PickupOrder]
|
|
83
|
+
def pickup_terms: (service_id: Integer, **request_value) -> Models::Pickup::TermsResponse
|
|
84
|
+
def print_labels: (**request_value) -> Models::Print::ExtendedPrintResponse
|
|
85
|
+
def print_labels_pdf: (**request_value) -> String
|
|
86
|
+
def label_info: (**request_value) -> Models::Print::LabelInfoResponse
|
|
87
|
+
def print_voucher: (shipment_ids: Array[String], **request_value) -> String
|
|
88
|
+
def own_client_id: () -> Integer
|
|
89
|
+
def get_client: (Integer) -> Models::Clients::Client
|
|
90
|
+
def contract_clients: () -> Collection[Models::Clients::Client]
|
|
91
|
+
def create_contact: (**request_value) -> Integer
|
|
92
|
+
def contact_by_external_id: (id: String, secret_key: String) -> Models::Clients::Client
|
|
93
|
+
def contract_info: () -> Models::Clients::ContractInfo
|
|
94
|
+
def payouts: (from_date: String, to_date: String, ?include_details: bool?) -> Collection[Models::Payments::Payout]
|
|
95
|
+
def find_sites: (**request_value) -> Collection[Models::Location::Site]
|
|
96
|
+
def get_site: (Integer) -> Models::Location::GetSiteResponse
|
|
97
|
+
def get_state: (String) -> Models::Location::State
|
|
98
|
+
def find_states: (**request_value) -> Collection[Models::Location::State]
|
|
99
|
+
def all_states: (**request_value) -> Collection[Models::Location::State]
|
|
100
|
+
def all_countries: () -> Collection[Models::Location::Country]
|
|
101
|
+
def all_sites: (country_id: Integer) -> Collection[Models::Location::Site]
|
|
102
|
+
def all_streets: (country_id: Integer) -> Collection[Models::Location::Street]
|
|
103
|
+
def all_complexes: (country_id: Integer) -> Collection[Models::Location::Complex]
|
|
104
|
+
def all_blocks: (country_id: Integer) -> Collection[Models::Location::Block]
|
|
105
|
+
def all_points_of_interest: (country_id: Integer) -> Collection[Models::Location::PointOfInterest]
|
|
106
|
+
def all_postcodes: (country_id: Integer) -> Collection[Models::Location::Postcode]
|
|
107
|
+
def find_countries: (**request_value) -> Collection[Models::Location::Country]
|
|
108
|
+
def get_country: (Integer) -> Models::Location::Country
|
|
109
|
+
def find_streets: (**request_value) -> Collection[Models::Location::Street]
|
|
110
|
+
def get_street: (Integer) -> Models::Location::Street
|
|
111
|
+
def find_complexes: (**request_value) -> Collection[Models::Location::Complex]
|
|
112
|
+
def get_complex: (Integer) -> Models::Location::Complex
|
|
113
|
+
def find_blocks: (**request_value) -> Collection[Models::Location::Block]
|
|
114
|
+
def find_points_of_interest: (**request_value) -> Collection[Models::Location::PointOfInterest]
|
|
115
|
+
def get_point_of_interest: (Integer) -> Models::Location::PointOfInterest
|
|
116
|
+
def find_offices: (**request_value) -> Collection[Models::Location::Office]
|
|
117
|
+
def get_office: (Integer) -> Models::Location::GetOfficeResponse
|
|
118
|
+
def nearest_offices: (address: request_hash, **request_value) -> Collection[Models::Location::OfficeResult]
|
|
119
|
+
def validate_address: (request_hash | Models::Shipments::ShipmentAddress) -> Models::Validation::ValidationResponse
|
|
120
|
+
def validate_phone: (number: String, ?extension: String?) -> Models::Validation::ValidationResponse
|
|
121
|
+
def validate_post_code: (country_id: Integer, post_code: String, ?site_id: Integer?) -> Models::Validation::ValidationResponse
|
|
122
|
+
def validate_shipment: (**request_value) -> Models::Validation::ValidationResponse
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
module Models
|
|
126
|
+
class Response < Model
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
class Error < Model
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
module Shipments
|
|
133
|
+
class CreateShipmentResponse < Model
|
|
134
|
+
attr_reader id: String?
|
|
135
|
+
attr_reader parcels: Array[CreatedShipmentParcel]
|
|
136
|
+
attr_reader pickup_date: String?
|
|
137
|
+
attr_reader price: ShipmentPrice?
|
|
138
|
+
attr_reader delivery_deadline: String?
|
|
139
|
+
end
|
|
140
|
+
class UpdateShipmentResponse < CreateShipmentResponse
|
|
141
|
+
end
|
|
142
|
+
class Shipment < Model
|
|
143
|
+
attr_reader id: String?
|
|
144
|
+
attr_reader sender: Sender?
|
|
145
|
+
attr_reader recipient: Recipient?
|
|
146
|
+
attr_reader price: ShipmentPrice?
|
|
147
|
+
attr_reader pending_shipment: bool?
|
|
148
|
+
end
|
|
149
|
+
class SecondaryShipment < Model
|
|
150
|
+
end
|
|
151
|
+
class BarcodeInformation < Model
|
|
152
|
+
end
|
|
153
|
+
class CreatedShipmentParcel < Model
|
|
154
|
+
attr_reader id: String?
|
|
155
|
+
attr_reader seq_no: Integer?
|
|
156
|
+
attr_reader external_carrier_id: Integer?
|
|
157
|
+
attr_reader external_carrier_parcel_number: String?
|
|
158
|
+
end
|
|
159
|
+
class ShipmentAddress < Model
|
|
160
|
+
end
|
|
161
|
+
class ShipmentPrice < Model
|
|
162
|
+
attr_reader amount: Float?
|
|
163
|
+
attr_reader vat: Float?
|
|
164
|
+
attr_reader total: Float?
|
|
165
|
+
attr_reader currency: String?
|
|
166
|
+
end
|
|
167
|
+
class Sender < Model
|
|
168
|
+
end
|
|
169
|
+
class Recipient < Model
|
|
170
|
+
end
|
|
171
|
+
class ShipmentParcelSize < Model
|
|
172
|
+
attr_reader width: Integer?
|
|
173
|
+
attr_reader height: Integer?
|
|
174
|
+
attr_reader depth: Integer?
|
|
175
|
+
end
|
|
176
|
+
class ShipmentAdditionalServices < Model
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
module Tracking
|
|
181
|
+
class BulkTrackingDataFile < Model
|
|
182
|
+
attr_reader id: Integer?
|
|
183
|
+
attr_reader url: String?
|
|
184
|
+
end
|
|
185
|
+
class TrackedParcel < Model
|
|
186
|
+
attr_reader parcel_id: String?
|
|
187
|
+
attr_reader operations: Array[TrackedParcelOperation]
|
|
188
|
+
attr_reader external_carrier_parcel_numbers_details: Hash[String, ExternalCarrierParcelNumberDetails] | Array[untyped] | nil
|
|
189
|
+
attr_reader ref: String?
|
|
190
|
+
attr_reader track_phase: String?
|
|
191
|
+
end
|
|
192
|
+
class ExternalCarrierParcelNumberDetails < Model
|
|
193
|
+
attr_reader external_carrier_id: Integer?
|
|
194
|
+
attr_reader external_carrier_name: String?
|
|
195
|
+
attr_reader track_and_trace_url: String?
|
|
196
|
+
end
|
|
197
|
+
class TrackedParcelOperation < Model
|
|
198
|
+
attr_reader date_time: String?
|
|
199
|
+
attr_reader operation_code: Integer?
|
|
200
|
+
attr_reader place: String?
|
|
201
|
+
attr_reader description: String?
|
|
202
|
+
attr_reader comment: String?
|
|
203
|
+
end
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
module Pickup
|
|
207
|
+
class TermsResponse < Model
|
|
208
|
+
attr_reader cutoffs: Array[String]
|
|
209
|
+
end
|
|
210
|
+
class PickupOrder < Model
|
|
211
|
+
attr_reader id: Integer?
|
|
212
|
+
attr_reader shipment_ids: Array[String]
|
|
213
|
+
attr_reader pickup_period_from: String?
|
|
214
|
+
attr_reader pickup_period_to: String?
|
|
215
|
+
end
|
|
216
|
+
end
|
|
217
|
+
|
|
218
|
+
module Clients
|
|
219
|
+
class Client < Model
|
|
220
|
+
end
|
|
221
|
+
class ContractInfo < Model
|
|
222
|
+
end
|
|
223
|
+
end
|
|
224
|
+
|
|
225
|
+
module Payments
|
|
226
|
+
class Payout < Model
|
|
227
|
+
attr_reader doc_id: Integer?
|
|
228
|
+
attr_reader doc_type: String?
|
|
229
|
+
attr_reader payment_type: String?
|
|
230
|
+
attr_reader payee: String?
|
|
231
|
+
attr_reader currency: String?
|
|
232
|
+
attr_reader amount: Float?
|
|
233
|
+
end
|
|
234
|
+
end
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
module Calculation
|
|
238
|
+
class CalculationResult < Model
|
|
239
|
+
attr_reader service_id: Integer?
|
|
240
|
+
attr_reader price: Models::Shipments::ShipmentPrice?
|
|
241
|
+
attr_reader pickup_date: String?
|
|
242
|
+
attr_reader delivery_deadline: String?
|
|
243
|
+
attr_reader delivery_deadline_work_day_type: String?
|
|
244
|
+
attr_reader additional_services: Models::Shipments::ShipmentAdditionalServices?
|
|
245
|
+
end
|
|
246
|
+
end
|
|
247
|
+
|
|
248
|
+
module Print
|
|
249
|
+
class ExtendedPrintResponse < Model
|
|
250
|
+
attr_reader data: String?
|
|
251
|
+
attr_reader print_labels_info: Array[LabelInfo]
|
|
252
|
+
end
|
|
253
|
+
class LabelInfoResponse < Model
|
|
254
|
+
attr_reader print_labels_info: Array[LabelInfo]
|
|
255
|
+
end
|
|
256
|
+
class LabelInfo < Model
|
|
257
|
+
attr_reader parcel_id: String?
|
|
258
|
+
attr_reader hub_id: Integer?
|
|
259
|
+
attr_reader office_id: Integer?
|
|
260
|
+
attr_reader full_barcode: String?
|
|
261
|
+
end
|
|
262
|
+
end
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
module Services
|
|
266
|
+
class CourierService < Model
|
|
267
|
+
attr_reader additional_services: AdditionalCourierServices?
|
|
268
|
+
attr_reader id: Integer?
|
|
269
|
+
attr_reader name: String?
|
|
270
|
+
attr_reader name_en: String?
|
|
271
|
+
attr_reader cargo_type: String?
|
|
272
|
+
attr_reader require_parcel_weight: bool?
|
|
273
|
+
attr_reader require_parcel_size: bool?
|
|
274
|
+
end
|
|
275
|
+
class AdditionalCourierService < Model
|
|
276
|
+
attr_reader allowance: String?
|
|
277
|
+
end
|
|
278
|
+
class AdditionalCourierServices < Model
|
|
279
|
+
attr_reader cod: AdditionalCourierService?
|
|
280
|
+
attr_reader obpd: AdditionalCourierService?
|
|
281
|
+
attr_reader declared_value: AdditionalCourierService?
|
|
282
|
+
attr_reader fixed_time_delivery: AdditionalCourierService?
|
|
283
|
+
attr_reader special_delivery: AdditionalCourierService?
|
|
284
|
+
attr_reader delivery_to_floor: AdditionalCourierService?
|
|
285
|
+
attr_reader rod: AdditionalCourierService?
|
|
286
|
+
attr_reader return_receipt: AdditionalCourierService?
|
|
287
|
+
attr_reader swap: AdditionalCourierService?
|
|
288
|
+
attr_reader rop: AdditionalCourierService?
|
|
289
|
+
attr_reader return_voucher: AdditionalCourierService?
|
|
290
|
+
end
|
|
291
|
+
class ExtendedCourierService < CourierService
|
|
292
|
+
attr_reader deadline: String?
|
|
293
|
+
end
|
|
294
|
+
end
|
|
295
|
+
|
|
296
|
+
module Location
|
|
297
|
+
class Country < Model
|
|
298
|
+
attr_reader id: Integer?
|
|
299
|
+
attr_reader name: String?
|
|
300
|
+
attr_reader name_en: String?
|
|
301
|
+
attr_reader iso_alpha2: String?
|
|
302
|
+
attr_reader iso_alpha3: String?
|
|
303
|
+
end
|
|
304
|
+
class State < Model
|
|
305
|
+
attr_reader id: String?
|
|
306
|
+
attr_reader name: String?
|
|
307
|
+
attr_reader country_id: Integer?
|
|
308
|
+
end
|
|
309
|
+
class Site < Model
|
|
310
|
+
attr_reader id: Integer?
|
|
311
|
+
attr_reader name: String?
|
|
312
|
+
attr_reader post_code: String?
|
|
313
|
+
end
|
|
314
|
+
class Street < Model
|
|
315
|
+
attr_reader id: Integer?
|
|
316
|
+
attr_reader site_id: Integer?
|
|
317
|
+
attr_reader name: String?
|
|
318
|
+
end
|
|
319
|
+
class Complex < Model
|
|
320
|
+
attr_reader id: Integer?
|
|
321
|
+
attr_reader site_id: Integer?
|
|
322
|
+
attr_reader name: String?
|
|
323
|
+
end
|
|
324
|
+
class Block < Model
|
|
325
|
+
attr_reader site_id: Integer?
|
|
326
|
+
attr_reader name: String?
|
|
327
|
+
end
|
|
328
|
+
class PointOfInterest < Model
|
|
329
|
+
attr_reader id: Integer?
|
|
330
|
+
attr_reader site_id: Integer?
|
|
331
|
+
attr_reader name: String?
|
|
332
|
+
end
|
|
333
|
+
class Postcode < Model
|
|
334
|
+
attr_reader postcode: String?
|
|
335
|
+
attr_reader site_id: Integer?
|
|
336
|
+
end
|
|
337
|
+
class Office < Model
|
|
338
|
+
attr_reader id: Integer?
|
|
339
|
+
attr_reader name: String?
|
|
340
|
+
attr_reader site_id: Integer?
|
|
341
|
+
attr_reader max_parcel_dimensions: Models::Shipments::ShipmentParcelSize?
|
|
342
|
+
attr_reader routing_information: RoutingInformation?
|
|
343
|
+
end
|
|
344
|
+
class RoutingInformation < Model
|
|
345
|
+
attr_reader tour: Tour?
|
|
346
|
+
attr_reader office_id: Integer?
|
|
347
|
+
attr_reader hub_id: Integer?
|
|
348
|
+
attr_reader priority: Integer?
|
|
349
|
+
end
|
|
350
|
+
class Tour < Model
|
|
351
|
+
attr_reader number: Integer?
|
|
352
|
+
attr_reader office_id: Integer?
|
|
353
|
+
attr_reader ramp: String?
|
|
354
|
+
attr_reader cell: String?
|
|
355
|
+
end
|
|
356
|
+
class OfficeResult < Office
|
|
357
|
+
attr_reader distance: Integer?
|
|
358
|
+
end
|
|
359
|
+
class GetOfficeResponse < Model
|
|
360
|
+
attr_reader office: Office?
|
|
361
|
+
end
|
|
362
|
+
class GetSiteResponse < Model
|
|
363
|
+
attr_reader site: Site?
|
|
364
|
+
end
|
|
365
|
+
end
|
|
366
|
+
|
|
367
|
+
module Validation
|
|
368
|
+
class ValidationResponse < Model
|
|
369
|
+
attr_reader valid: bool?
|
|
370
|
+
def valid?: () -> bool?
|
|
371
|
+
end
|
|
372
|
+
end
|
|
373
|
+
end
|
|
374
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: speedy-bg
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.1.0
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Boyan Georgiev
|
|
8
|
+
bindir: exe
|
|
9
|
+
cert_chain: []
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
11
|
+
dependencies:
|
|
12
|
+
- !ruby/object:Gem::Dependency
|
|
13
|
+
name: csv
|
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
|
15
|
+
requirements:
|
|
16
|
+
- - "~>"
|
|
17
|
+
- !ruby/object:Gem::Version
|
|
18
|
+
version: '3.3'
|
|
19
|
+
type: :runtime
|
|
20
|
+
prerelease: false
|
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
22
|
+
requirements:
|
|
23
|
+
- - "~>"
|
|
24
|
+
- !ruby/object:Gem::Version
|
|
25
|
+
version: '3.3'
|
|
26
|
+
- !ruby/object:Gem::Dependency
|
|
27
|
+
name: faraday
|
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
|
+
requirements:
|
|
30
|
+
- - ">="
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: '2.14'
|
|
33
|
+
- - "<"
|
|
34
|
+
- !ruby/object:Gem::Version
|
|
35
|
+
version: '3.0'
|
|
36
|
+
type: :runtime
|
|
37
|
+
prerelease: false
|
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
39
|
+
requirements:
|
|
40
|
+
- - ">="
|
|
41
|
+
- !ruby/object:Gem::Version
|
|
42
|
+
version: '2.14'
|
|
43
|
+
- - "<"
|
|
44
|
+
- !ruby/object:Gem::Version
|
|
45
|
+
version: '3.0'
|
|
46
|
+
description: A Faraday-backed Ruby client for Speedy shipments, labels, tracking,
|
|
47
|
+
locations, pickups, clients, contracts, and payouts.
|
|
48
|
+
email:
|
|
49
|
+
- boyan.georgiev@smartly.io
|
|
50
|
+
executables: []
|
|
51
|
+
extensions: []
|
|
52
|
+
extra_rdoc_files: []
|
|
53
|
+
files:
|
|
54
|
+
- CHANGELOG.md
|
|
55
|
+
- CODE_OF_CONDUCT.md
|
|
56
|
+
- CONTRIBUTING.md
|
|
57
|
+
- LICENSE.txt
|
|
58
|
+
- README.md
|
|
59
|
+
- SECURITY.md
|
|
60
|
+
- docs/API.md
|
|
61
|
+
- docs/RESPONSE_CONTRACTS.md
|
|
62
|
+
- docs/VCR.md
|
|
63
|
+
- docs/schema-notes.md
|
|
64
|
+
- lib/speedy-bg.rb
|
|
65
|
+
- lib/speedy.rb
|
|
66
|
+
- lib/speedy/camel_case_middleware.rb
|
|
67
|
+
- lib/speedy/client.rb
|
|
68
|
+
- lib/speedy/client_resources.rb
|
|
69
|
+
- lib/speedy/collection.rb
|
|
70
|
+
- lib/speedy/error.rb
|
|
71
|
+
- lib/speedy/model.rb
|
|
72
|
+
- lib/speedy/models/calculation/address_location.rb
|
|
73
|
+
- lib/speedy/models/calculation/calculation_content.rb
|
|
74
|
+
- lib/speedy/models/calculation/calculation_recipient.rb
|
|
75
|
+
- lib/speedy/models/calculation/calculation_result.rb
|
|
76
|
+
- lib/speedy/models/calculation/calculation_sender.rb
|
|
77
|
+
- lib/speedy/models/calculation/calculation_service.rb
|
|
78
|
+
- lib/speedy/models/clients/client.rb
|
|
79
|
+
- lib/speedy/models/clients/cod_contract_info.rb
|
|
80
|
+
- lib/speedy/models/clients/cod_international_annex.rb
|
|
81
|
+
- lib/speedy/models/clients/contract_info.rb
|
|
82
|
+
- lib/speedy/models/clients/requirement.rb
|
|
83
|
+
- lib/speedy/models/clients/special_delivery_requirements.rb
|
|
84
|
+
- lib/speedy/models/common/address.rb
|
|
85
|
+
- lib/speedy/models/error.rb
|
|
86
|
+
- lib/speedy/models/location/address_nomenclature_type.rb
|
|
87
|
+
- lib/speedy/models/location/block.rb
|
|
88
|
+
- lib/speedy/models/location/complex.rb
|
|
89
|
+
- lib/speedy/models/location/country.rb
|
|
90
|
+
- lib/speedy/models/location/find_office_response.rb
|
|
91
|
+
- lib/speedy/models/location/find_site_response.rb
|
|
92
|
+
- lib/speedy/models/location/get_office_response.rb
|
|
93
|
+
- lib/speedy/models/location/get_site_response.rb
|
|
94
|
+
- lib/speedy/models/location/office.rb
|
|
95
|
+
- lib/speedy/models/location/office_result.rb
|
|
96
|
+
- lib/speedy/models/location/office_working_time_schedule.rb
|
|
97
|
+
- lib/speedy/models/location/point_of_interest.rb
|
|
98
|
+
- lib/speedy/models/location/postcode.rb
|
|
99
|
+
- lib/speedy/models/location/routing_information.rb
|
|
100
|
+
- lib/speedy/models/location/site.rb
|
|
101
|
+
- lib/speedy/models/location/state.rb
|
|
102
|
+
- lib/speedy/models/location/street.rb
|
|
103
|
+
- lib/speedy/models/location/tour.rb
|
|
104
|
+
- lib/speedy/models/payments/payout.rb
|
|
105
|
+
- lib/speedy/models/payments/payout_details.rb
|
|
106
|
+
- lib/speedy/models/pickup/pickup_order.rb
|
|
107
|
+
- lib/speedy/models/pickup/terms_response.rb
|
|
108
|
+
- lib/speedy/models/print/extended_print_response.rb
|
|
109
|
+
- lib/speedy/models/print/label_info.rb
|
|
110
|
+
- lib/speedy/models/print/label_info_response.rb
|
|
111
|
+
- lib/speedy/models/print/parcel_to_print_additional_barcode.rb
|
|
112
|
+
- lib/speedy/models/print/print_response.rb
|
|
113
|
+
- lib/speedy/models/response.rb
|
|
114
|
+
- lib/speedy/models/services/additional_courier_service.rb
|
|
115
|
+
- lib/speedy/models/services/additional_courier_services.rb
|
|
116
|
+
- lib/speedy/models/services/courier_service.rb
|
|
117
|
+
- lib/speedy/models/services/extended_courier_service.rb
|
|
118
|
+
- lib/speedy/models/shipments/bank_account.rb
|
|
119
|
+
- lib/speedy/models/shipments/barcode_information.rb
|
|
120
|
+
- lib/speedy/models/shipments/cod_payment.rb
|
|
121
|
+
- lib/speedy/models/shipments/content.rb
|
|
122
|
+
- lib/speedy/models/shipments/create_shipment_response.rb
|
|
123
|
+
- lib/speedy/models/shipments/created_shipment_parcel.rb
|
|
124
|
+
- lib/speedy/models/shipments/external_carrier_parcel_number.rb
|
|
125
|
+
- lib/speedy/models/shipments/goods_item.rb
|
|
126
|
+
- lib/speedy/models/shipments/money_transfer_premium.rb
|
|
127
|
+
- lib/speedy/models/shipments/parcel.rb
|
|
128
|
+
- lib/speedy/models/shipments/payment.rb
|
|
129
|
+
- lib/speedy/models/shipments/primary_shipment.rb
|
|
130
|
+
- lib/speedy/models/shipments/recipient.rb
|
|
131
|
+
- lib/speedy/models/shipments/return_amounts.rb
|
|
132
|
+
- lib/speedy/models/shipments/secondary_shipment.rb
|
|
133
|
+
- lib/speedy/models/shipments/sender.rb
|
|
134
|
+
- lib/speedy/models/shipments/shipment.rb
|
|
135
|
+
- lib/speedy/models/shipments/shipment_additional_services.rb
|
|
136
|
+
- lib/speedy/models/shipments/shipment_address.rb
|
|
137
|
+
- lib/speedy/models/shipments/shipment_cod_additional_service.rb
|
|
138
|
+
- lib/speedy/models/shipments/shipment_cod_fiscal_receipt_item.rb
|
|
139
|
+
- lib/speedy/models/shipments/shipment_content.rb
|
|
140
|
+
- lib/speedy/models/shipments/shipment_declared_value_additional_service.rb
|
|
141
|
+
- lib/speedy/models/shipments/shipment_delivery.rb
|
|
142
|
+
- lib/speedy/models/shipments/shipment_discount_card_id.rb
|
|
143
|
+
- lib/speedy/models/shipments/shipment_electronic_return_receipt_additional_service.rb
|
|
144
|
+
- lib/speedy/models/shipments/shipment_obpd.rb
|
|
145
|
+
- lib/speedy/models/shipments/shipment_parcel.rb
|
|
146
|
+
- lib/speedy/models/shipments/shipment_parcel_number.rb
|
|
147
|
+
- lib/speedy/models/shipments/shipment_parcel_ref.rb
|
|
148
|
+
- lib/speedy/models/shipments/shipment_parcel_size.rb
|
|
149
|
+
- lib/speedy/models/shipments/shipment_payment.rb
|
|
150
|
+
- lib/speedy/models/shipments/shipment_phone_number.rb
|
|
151
|
+
- lib/speedy/models/shipments/shipment_price.rb
|
|
152
|
+
- lib/speedy/models/shipments/shipment_price_amount.rb
|
|
153
|
+
- lib/speedy/models/shipments/shipment_recipient.rb
|
|
154
|
+
- lib/speedy/models/shipments/shipment_return_additional_services.rb
|
|
155
|
+
- lib/speedy/models/shipments/shipment_return_receipt_additional_service.rb
|
|
156
|
+
- lib/speedy/models/shipments/shipment_return_voucher_additional_service.rb
|
|
157
|
+
- lib/speedy/models/shipments/shipment_rod_additional_service.rb
|
|
158
|
+
- lib/speedy/models/shipments/shipment_rop_additional_service.rb
|
|
159
|
+
- lib/speedy/models/shipments/shipment_rop_additional_service_line.rb
|
|
160
|
+
- lib/speedy/models/shipments/shipment_sender.rb
|
|
161
|
+
- lib/speedy/models/shipments/shipment_service.rb
|
|
162
|
+
- lib/speedy/models/shipments/shipment_swap_additional_service.rb
|
|
163
|
+
- lib/speedy/models/shipments/update_shipment_response.rb
|
|
164
|
+
- lib/speedy/models/tracking/bulk_tracking_data_file.rb
|
|
165
|
+
- lib/speedy/models/tracking/external_carrier_parcel_number_details.rb
|
|
166
|
+
- lib/speedy/models/tracking/tracked_parcel.rb
|
|
167
|
+
- lib/speedy/models/tracking/tracked_parcel_operation.rb
|
|
168
|
+
- lib/speedy/models/tracking/tracked_parcel_operation_additional_info.rb
|
|
169
|
+
- lib/speedy/models/tracking/tracked_parcel_operation_additional_info_predict.rb
|
|
170
|
+
- lib/speedy/models/tracking/tracked_parcel_operation_additional_info_recipient.rb
|
|
171
|
+
- lib/speedy/models/validation/validation_response.rb
|
|
172
|
+
- lib/speedy/resource_attributes.rb
|
|
173
|
+
- lib/speedy/service_resource.rb
|
|
174
|
+
- lib/speedy/services/calculation.rb
|
|
175
|
+
- lib/speedy/services/clients.rb
|
|
176
|
+
- lib/speedy/services/courier_services.rb
|
|
177
|
+
- lib/speedy/services/location.rb
|
|
178
|
+
- lib/speedy/services/location/block.rb
|
|
179
|
+
- lib/speedy/services/location/complex.rb
|
|
180
|
+
- lib/speedy/services/location/country.rb
|
|
181
|
+
- lib/speedy/services/location/office.rb
|
|
182
|
+
- lib/speedy/services/location/point_of_interest.rb
|
|
183
|
+
- lib/speedy/services/location/postcode.rb
|
|
184
|
+
- lib/speedy/services/location/site.rb
|
|
185
|
+
- lib/speedy/services/location/state.rb
|
|
186
|
+
- lib/speedy/services/location/street.rb
|
|
187
|
+
- lib/speedy/services/payments.rb
|
|
188
|
+
- lib/speedy/services/pickup.rb
|
|
189
|
+
- lib/speedy/services/print.rb
|
|
190
|
+
- lib/speedy/services/shipments.rb
|
|
191
|
+
- lib/speedy/services/shipments/shipment.rb
|
|
192
|
+
- lib/speedy/services/tracking.rb
|
|
193
|
+
- lib/speedy/services/validation.rb
|
|
194
|
+
- lib/speedy/services/validation/address.rb
|
|
195
|
+
- lib/speedy/services/validation/general.rb
|
|
196
|
+
- lib/speedy/transport_error.rb
|
|
197
|
+
- lib/speedy/util.rb
|
|
198
|
+
- lib/speedy/version.rb
|
|
199
|
+
- sig/speedy.rbs
|
|
200
|
+
homepage: https://github.com/BoyanGeorgiev96/speedy
|
|
201
|
+
licenses:
|
|
202
|
+
- MIT
|
|
203
|
+
metadata:
|
|
204
|
+
homepage_uri: https://github.com/BoyanGeorgiev96/speedy
|
|
205
|
+
source_code_uri: https://github.com/BoyanGeorgiev96/speedy/tree/main
|
|
206
|
+
bug_tracker_uri: https://github.com/BoyanGeorgiev96/speedy/issues
|
|
207
|
+
changelog_uri: https://github.com/BoyanGeorgiev96/speedy/blob/main/CHANGELOG.md
|
|
208
|
+
documentation_uri: https://github.com/BoyanGeorgiev96/speedy/blob/main/docs/API.md
|
|
209
|
+
rubygems_mfa_required: 'true'
|
|
210
|
+
rdoc_options: []
|
|
211
|
+
require_paths:
|
|
212
|
+
- lib
|
|
213
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
214
|
+
requirements:
|
|
215
|
+
- - ">="
|
|
216
|
+
- !ruby/object:Gem::Version
|
|
217
|
+
version: 3.3.0
|
|
218
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
219
|
+
requirements:
|
|
220
|
+
- - ">="
|
|
221
|
+
- !ruby/object:Gem::Version
|
|
222
|
+
version: '0'
|
|
223
|
+
requirements: []
|
|
224
|
+
rubygems_version: 4.0.20
|
|
225
|
+
specification_version: 4
|
|
226
|
+
summary: Ruby client for the Speedy Bulgaria REST API.
|
|
227
|
+
test_files: []
|