zippendo 1.0.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 (480) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE.md +21 -0
  4. data/README.md +99 -0
  5. data/Rakefile +10 -0
  6. data/docs/AddressesApi.md +375 -0
  7. data/docs/BatchSendShipments200Response.md +20 -0
  8. data/docs/BatchSendShipments200ResponseResultsInner.md +26 -0
  9. data/docs/BatchSendShipments200ResponseSummary.md +22 -0
  10. data/docs/BatchSendShipmentsRequest.md +18 -0
  11. data/docs/BatchSplitShipment201Response.md +20 -0
  12. data/docs/BatchSplitShipmentRequest.md +28 -0
  13. data/docs/BatchSplitShipmentRequestShipmentsInner.md +20 -0
  14. data/docs/BatchSplitShipmentRequestShipmentsInnerOrderLinesInner.md +20 -0
  15. data/docs/BillingApi.md +77 -0
  16. data/docs/CarrierCatalogApi.md +77 -0
  17. data/docs/CarriersApi.md +521 -0
  18. data/docs/ConnectCarrierRequest.md +22 -0
  19. data/docs/CreateAddressRequest.md +40 -0
  20. data/docs/CreateApiToken201Response.md +32 -0
  21. data/docs/CreateApiTokenRequest.md +22 -0
  22. data/docs/CreateOrder201Response.md +52 -0
  23. data/docs/CreateOrder201ResponseOrderLinesInner.md +54 -0
  24. data/docs/CreateOrder201ResponseShippingAddress.md +42 -0
  25. data/docs/CreateOrderRequest.md +40 -0
  26. data/docs/CreateOrderRequestOrderLinesInner.md +54 -0
  27. data/docs/CreateOrderRequestShippingAddress.md +42 -0
  28. data/docs/CreateOrgWebhook201Response.md +32 -0
  29. data/docs/CreateOrgWebhookRequest.md +24 -0
  30. data/docs/CreateShipment201Response.md +64 -0
  31. data/docs/CreateShipment201ResponseActivitiesInner.md +26 -0
  32. data/docs/CreateShipment201ResponseDocumentsInner.md +32 -0
  33. data/docs/CreateShipment201ResponseErrorsInner.md +26 -0
  34. data/docs/CreateShipment201ResponseLogsInner.md +32 -0
  35. data/docs/CreateShipment201ResponseParcelsInner.md +38 -0
  36. data/docs/CreateShipment201ResponseParcelsInnerDimensions.md +22 -0
  37. data/docs/CreateShipment201ResponseParcelsInnerOrderLinesInner.md +36 -0
  38. data/docs/CreateShipment201ResponsePartiesInner.md +38 -0
  39. data/docs/CreateShipment201ResponsePartiesInnerAttributesInner.md +20 -0
  40. data/docs/CreateShipment201ResponsePickupDetails.md +24 -0
  41. data/docs/CreateShipment201ResponseShippingRule.md +40 -0
  42. data/docs/CreateShipment201ResponseTracking.md +28 -0
  43. data/docs/CreateShipmentRequest.md +42 -0
  44. data/docs/CreateShipmentRequestCarrierSettings.md +24 -0
  45. data/docs/CreateShipmentRequestParcelsInner.md +38 -0
  46. data/docs/CreateShipmentRequestParcelsInnerDimensions.md +22 -0
  47. data/docs/CreateShipmentRequestParcelsInnerOrderLinesInner.md +36 -0
  48. data/docs/CreateShipmentRequestPartiesInner.md +38 -0
  49. data/docs/CreateShipmentRequestPartiesInnerAttributesInner.md +20 -0
  50. data/docs/CreateShipmentRequestPickupDetails.md +24 -0
  51. data/docs/CreateShippingQuote200Response.md +18 -0
  52. data/docs/CreateShippingQuote200ResponseRatesInner.md +38 -0
  53. data/docs/CreateShippingQuote400Response.md +20 -0
  54. data/docs/CreateShippingQuote404Response.md +20 -0
  55. data/docs/CreateShippingQuoteRequest.md +24 -0
  56. data/docs/CreateShippingQuoteRequestDestination.md +28 -0
  57. data/docs/CreateShippingQuoteRequestItemsInner.md +30 -0
  58. data/docs/CreateShippingRule201Response.md +74 -0
  59. data/docs/CreateShippingRuleRequest.md +66 -0
  60. data/docs/CreateShippingRuleRequestAdditionalParameters.md +15 -0
  61. data/docs/CreateShippingRuleRequestAdditionalParametersAnyOfInner.md +20 -0
  62. data/docs/CreateShippingRuleRequestAdditionalParametersAnyOfValue.md +24 -0
  63. data/docs/CreateShippingRuleRequestAdditionalParametersAnyOfValueAnyOf.md +24 -0
  64. data/docs/CreateShippingRuleRequestAdditionalParametersAnyOfValueAnyOfCoordinatesInner.md +15 -0
  65. data/docs/CreateShippingRuleRequestConditionsInner.md +55 -0
  66. data/docs/CreateShippingRuleRequestConditionsInnerOneOf.md +26 -0
  67. data/docs/CreateShippingRuleRequestConditionsInnerOneOf1.md +28 -0
  68. data/docs/CreateShippingRuleRequestConditionsInnerOneOf2.md +28 -0
  69. data/docs/CreateShippingRuleRequestConditionsInnerOneOf3.md +26 -0
  70. data/docs/CreateShippingRuleRequestConditionsInnerOneOf4.md +22 -0
  71. data/docs/DeleteOrgWebhook200Response.md +18 -0
  72. data/docs/DeleteShippingRule200Response.md +18 -0
  73. data/docs/GetBillingUsage200Response.md +24 -0
  74. data/docs/GetBillingUsage200ResponseAddOnsInner.md +24 -0
  75. data/docs/GetBillingUsage200ResponseCurrentPeriod.md +20 -0
  76. data/docs/GetBillingUsage200ResponseLimits.md +30 -0
  77. data/docs/GetBillingUsage200ResponseLimitsTeamMembers.md +20 -0
  78. data/docs/GetBillingUsage200ResponseShipments.md +24 -0
  79. data/docs/GetOrder200Response.md +58 -0
  80. data/docs/GetOrder200ResponseShipmentsInner.md +36 -0
  81. data/docs/GetOrder200ResponseShippingRule.md +40 -0
  82. data/docs/GetOrg200Response.md +50 -0
  83. data/docs/GetOrg200ResponseCount.md +18 -0
  84. data/docs/GetOrgBranding200Response.md +22 -0
  85. data/docs/HealthCheck200Response.md +22 -0
  86. data/docs/ListAddresses200Response.md +26 -0
  87. data/docs/ListAddresses200ResponseDataInner.md +48 -0
  88. data/docs/ListApiTokens200Response.md +26 -0
  89. data/docs/ListApiTokens200ResponseDataInner.md +32 -0
  90. data/docs/ListApiTokens200ResponseDataInnerCreatedBy.md +22 -0
  91. data/docs/ListApiTokens401Response.md +22 -0
  92. data/docs/ListAvailableCarriers200ResponseInner.md +38 -0
  93. data/docs/ListAvailableCarriers200ResponseInnerRequiredFieldsInner.md +28 -0
  94. data/docs/ListCarrierProductServicePoints200ResponseInner.md +32 -0
  95. data/docs/ListCarrierProductServicePoints200ResponseInnerAddress.md +28 -0
  96. data/docs/ListCarrierProductServicePointsRequest.md +28 -0
  97. data/docs/ListCarrierProducts200ResponseInner.md +38 -0
  98. data/docs/ListCarrierProducts200ResponseInnerAdditionalParametersInner.md +30 -0
  99. data/docs/ListCarrierProducts200ResponseInnerAdditionalParametersInnerOptionsInner.md +22 -0
  100. data/docs/ListCarrierProducts200ResponseInnerServicesInner.md +20 -0
  101. data/docs/ListCarrierProducts200ResponseInnerWeightLimits.md +22 -0
  102. data/docs/ListCarriers200Response.md +26 -0
  103. data/docs/ListCarriers200ResponseDataInner.md +38 -0
  104. data/docs/ListCarriers200ResponseDataInnerConfigValue.md +15 -0
  105. data/docs/ListOrders200Response.md +26 -0
  106. data/docs/ListOrders200ResponseDataInner.md +40 -0
  107. data/docs/ListOrders200ResponseDataInnerOrderChannel.md +22 -0
  108. data/docs/ListOrgWebhookDeliveries200Response.md +26 -0
  109. data/docs/ListOrgWebhookDeliveries200ResponseDataInner.md +38 -0
  110. data/docs/ListOrgWebhooks200Response.md +26 -0
  111. data/docs/ListOrgWebhooks200ResponseDataInner.md +30 -0
  112. data/docs/ListShipments200Response.md +26 -0
  113. data/docs/ListShipments200ResponseDataInner.md +32 -0
  114. data/docs/ListShipments200ResponseDataInnerAddress.md +48 -0
  115. data/docs/ListShipments200ResponseDataInnerCarrierSettings.md +24 -0
  116. data/docs/ListShipments200ResponseDataInnerCarrierSettingsAdditionalParametersValue.md +24 -0
  117. data/docs/ListShipments200ResponseDataInnerCarrierSettingsAdditionalParametersValueAnyOf.md +24 -0
  118. data/docs/ListShippingRules200Response.md +26 -0
  119. data/docs/ListShippingRules200ResponseDataInner.md +84 -0
  120. data/docs/ListShippingRules200ResponseDataInnerAdditionalParametersInner.md +20 -0
  121. data/docs/ListShippingRules200ResponseDataInnerCarrier.md +30 -0
  122. data/docs/ListShippingRules200ResponseDataInnerConditionsInner.md +55 -0
  123. data/docs/ListShippingRules200ResponseDataInnerConditionsInnerOneOf.md +26 -0
  124. data/docs/ListShippingRules200ResponseDataInnerConditionsInnerOneOf1.md +28 -0
  125. data/docs/ListShippingRules200ResponseDataInnerConditionsInnerOneOf2.md +28 -0
  126. data/docs/ListShippingRules200ResponseDataInnerConditionsInnerOneOf3.md +26 -0
  127. data/docs/ListShippingRules200ResponseDataInnerConditionsInnerOneOf4.md +22 -0
  128. data/docs/ListShippingRules200ResponseDataInnerLabelPrinter.md +20 -0
  129. data/docs/ListShippingRules200ResponseDataInnerReturnShippingRule.md +20 -0
  130. data/docs/OrdersApi.md +379 -0
  131. data/docs/OrgsApi.md +503 -0
  132. data/docs/QuotesApi.md +79 -0
  133. data/docs/RevokeApiToken200Response.md +18 -0
  134. data/docs/RulesApi.md +373 -0
  135. data/docs/SendShipment422Response.md +24 -0
  136. data/docs/SendShipment422ResponseErrorsInner.md +20 -0
  137. data/docs/ShipmentsApi.md +962 -0
  138. data/docs/SplitShipment201Response.md +20 -0
  139. data/docs/SplitShipmentParcel200Response.md +18 -0
  140. data/docs/SplitShipmentParcelRequest.md +18 -0
  141. data/docs/SplitShipmentParcelRequestParcelsInner.md +20 -0
  142. data/docs/SplitShipmentRequest.md +30 -0
  143. data/docs/SystemApi.md +74 -0
  144. data/docs/TestOrgWebhook200Response.md +18 -0
  145. data/docs/TokensApi.md +443 -0
  146. data/docs/TrackShipment200Response.md +26 -0
  147. data/docs/TrackShipment200ResponseEventsInner.md +28 -0
  148. data/docs/UpdateAddressRequest.md +40 -0
  149. data/docs/UpdateApiTokenRequest.md +18 -0
  150. data/docs/UpdateCarrierRequest.md +22 -0
  151. data/docs/UpdateOrderRequest.md +38 -0
  152. data/docs/UpdateOrg200Response.md +48 -0
  153. data/docs/UpdateOrgBrandingRequest.md +20 -0
  154. data/docs/UpdateOrgRequest.md +44 -0
  155. data/docs/UpdateOrgWebhookRequest.md +24 -0
  156. data/docs/UpdateShipmentRequest.md +44 -0
  157. data/docs/UpdateShippingRuleRequest.md +66 -0
  158. data/docs/VerifyApiToken200Response.md +28 -0
  159. data/docs/VerifyApiTokenRequest.md +18 -0
  160. data/docs/WebhooksApi.md +523 -0
  161. data/git_push.sh +57 -0
  162. data/lib/zippendo/api/addresses_api.rb +406 -0
  163. data/lib/zippendo/api/billing_api.rb +85 -0
  164. data/lib/zippendo/api/carrier_catalog_api.rb +85 -0
  165. data/lib/zippendo/api/carriers_api.rb +554 -0
  166. data/lib/zippendo/api/orders_api.rb +412 -0
  167. data/lib/zippendo/api/orgs_api.rb +497 -0
  168. data/lib/zippendo/api/quotes_api.rb +96 -0
  169. data/lib/zippendo/api/rules_api.rb +399 -0
  170. data/lib/zippendo/api/shipments_api.rb +1003 -0
  171. data/lib/zippendo/api/system_api.rb +79 -0
  172. data/lib/zippendo/api/tokens_api.rb +467 -0
  173. data/lib/zippendo/api/webhooks_api.rb +559 -0
  174. data/lib/zippendo/api_client.rb +397 -0
  175. data/lib/zippendo/api_error.rb +58 -0
  176. data/lib/zippendo/api_model_base.rb +88 -0
  177. data/lib/zippendo/configuration.rb +309 -0
  178. data/lib/zippendo/models/batch_send_shipments200_response.rb +193 -0
  179. data/lib/zippendo/models/batch_send_shipments200_response_results_inner.rb +260 -0
  180. data/lib/zippendo/models/batch_send_shipments200_response_summary.rb +274 -0
  181. data/lib/zippendo/models/batch_send_shipments_request.rb +185 -0
  182. data/lib/zippendo/models/batch_split_shipment201_response.rb +193 -0
  183. data/lib/zippendo/models/batch_split_shipment_request.rb +247 -0
  184. data/lib/zippendo/models/batch_split_shipment_request_shipments_inner.rb +186 -0
  185. data/lib/zippendo/models/batch_split_shipment_request_shipments_inner_order_lines_inner.rb +210 -0
  186. data/lib/zippendo/models/connect_carrier_request.rb +239 -0
  187. data/lib/zippendo/models/create_address_request.rb +508 -0
  188. data/lib/zippendo/models/create_api_token201_response.rb +328 -0
  189. data/lib/zippendo/models/create_api_token_request.rb +267 -0
  190. data/lib/zippendo/models/create_order201_response.rb +491 -0
  191. data/lib/zippendo/models/create_order201_response_order_lines_inner.rb +533 -0
  192. data/lib/zippendo/models/create_order201_response_shipping_address.rb +433 -0
  193. data/lib/zippendo/models/create_order_request.rb +410 -0
  194. data/lib/zippendo/models/create_order_request_order_lines_inner.rb +533 -0
  195. data/lib/zippendo/models/create_order_request_shipping_address.rb +433 -0
  196. data/lib/zippendo/models/create_org_webhook201_response.rb +356 -0
  197. data/lib/zippendo/models/create_org_webhook_request.rb +268 -0
  198. data/lib/zippendo/models/create_shipment201_response.rb +659 -0
  199. data/lib/zippendo/models/create_shipment201_response_activities_inner.rb +281 -0
  200. data/lib/zippendo/models/create_shipment201_response_documents_inner.rb +382 -0
  201. data/lib/zippendo/models/create_shipment201_response_errors_inner.rb +257 -0
  202. data/lib/zippendo/models/create_shipment201_response_logs_inner.rb +300 -0
  203. data/lib/zippendo/models/create_shipment201_response_parcels_inner.rb +356 -0
  204. data/lib/zippendo/models/create_shipment201_response_parcels_inner_dimensions.rb +246 -0
  205. data/lib/zippendo/models/create_shipment201_response_parcels_inner_order_lines_inner.rb +402 -0
  206. data/lib/zippendo/models/create_shipment201_response_parties_inner.rb +468 -0
  207. data/lib/zippendo/models/create_shipment201_response_parties_inner_attributes_inner.rb +210 -0
  208. data/lib/zippendo/models/create_shipment201_response_pickup_details.rb +229 -0
  209. data/lib/zippendo/models/create_shipment201_response_shipping_rule.rb +365 -0
  210. data/lib/zippendo/models/create_shipment201_response_tracking.rb +204 -0
  211. data/lib/zippendo/models/create_shipment_request.rb +407 -0
  212. data/lib/zippendo/models/create_shipment_request_carrier_settings.rb +250 -0
  213. data/lib/zippendo/models/create_shipment_request_parcels_inner.rb +356 -0
  214. data/lib/zippendo/models/create_shipment_request_parcels_inner_dimensions.rb +246 -0
  215. data/lib/zippendo/models/create_shipment_request_parcels_inner_order_lines_inner.rb +402 -0
  216. data/lib/zippendo/models/create_shipment_request_parties_inner.rb +451 -0
  217. data/lib/zippendo/models/create_shipment_request_parties_inner_attributes_inner.rb +210 -0
  218. data/lib/zippendo/models/create_shipment_request_pickup_details.rb +229 -0
  219. data/lib/zippendo/models/create_shipping_quote200_response.rb +167 -0
  220. data/lib/zippendo/models/create_shipping_quote200_response_rates_inner.rb +333 -0
  221. data/lib/zippendo/models/create_shipping_quote400_response.rb +192 -0
  222. data/lib/zippendo/models/create_shipping_quote404_response.rb +192 -0
  223. data/lib/zippendo/models/create_shipping_quote_request.rb +276 -0
  224. data/lib/zippendo/models/create_shipping_quote_request_destination.rb +233 -0
  225. data/lib/zippendo/models/create_shipping_quote_request_items_inner.rb +315 -0
  226. data/lib/zippendo/models/create_shipping_rule201_response.rb +910 -0
  227. data/lib/zippendo/models/create_shipping_rule_request.rb +640 -0
  228. data/lib/zippendo/models/create_shipping_rule_request_additional_parameters.rb +104 -0
  229. data/lib/zippendo/models/create_shipping_rule_request_additional_parameters_any_of_inner.rb +201 -0
  230. data/lib/zippendo/models/create_shipping_rule_request_additional_parameters_any_of_value.rb +105 -0
  231. data/lib/zippendo/models/create_shipping_rule_request_additional_parameters_any_of_value_any_of.rb +259 -0
  232. data/lib/zippendo/models/create_shipping_rule_request_additional_parameters_any_of_value_any_of_coordinates_inner.rb +102 -0
  233. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner.rb +107 -0
  234. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of.rb +342 -0
  235. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of1.rb +359 -0
  236. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of2.rb +366 -0
  237. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of3.rb +344 -0
  238. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of4.rb +270 -0
  239. data/lib/zippendo/models/delete_org_webhook200_response.rb +165 -0
  240. data/lib/zippendo/models/delete_shipping_rule200_response.rb +165 -0
  241. data/lib/zippendo/models/get_billing_usage200_response.rb +245 -0
  242. data/lib/zippendo/models/get_billing_usage200_response_add_ons_inner.rb +270 -0
  243. data/lib/zippendo/models/get_billing_usage200_response_current_period.rb +192 -0
  244. data/lib/zippendo/models/get_billing_usage200_response_limits.rb +320 -0
  245. data/lib/zippendo/models/get_billing_usage200_response_limits_team_members.rb +192 -0
  246. data/lib/zippendo/models/get_billing_usage200_response_shipments.rb +246 -0
  247. data/lib/zippendo/models/get_order200_response.rb +555 -0
  248. data/lib/zippendo/models/get_order200_response_shipments_inner.rb +385 -0
  249. data/lib/zippendo/models/get_order200_response_shipping_rule.rb +365 -0
  250. data/lib/zippendo/models/get_org200_response.rb +440 -0
  251. data/lib/zippendo/models/get_org200_response_count.rb +165 -0
  252. data/lib/zippendo/models/get_org_branding200_response.rb +177 -0
  253. data/lib/zippendo/models/health_check200_response.rb +219 -0
  254. data/lib/zippendo/models/list_addresses200_response.rb +275 -0
  255. data/lib/zippendo/models/list_addresses200_response_data_inner.rb +553 -0
  256. data/lib/zippendo/models/list_api_tokens200_response.rb +275 -0
  257. data/lib/zippendo/models/list_api_tokens200_response_data_inner.rb +327 -0
  258. data/lib/zippendo/models/list_api_tokens200_response_data_inner_created_by.rb +205 -0
  259. data/lib/zippendo/models/list_api_tokens401_response.rb +236 -0
  260. data/lib/zippendo/models/list_available_carriers200_response_inner.rb +286 -0
  261. data/lib/zippendo/models/list_available_carriers200_response_inner_required_fields_inner.rb +292 -0
  262. data/lib/zippendo/models/list_carrier_product_service_points200_response_inner.rb +287 -0
  263. data/lib/zippendo/models/list_carrier_product_service_points200_response_inner_address.rb +314 -0
  264. data/lib/zippendo/models/list_carrier_product_service_points_request.rb +313 -0
  265. data/lib/zippendo/models/list_carrier_products200_response_inner.rb +398 -0
  266. data/lib/zippendo/models/list_carrier_products200_response_inner_additional_parameters_inner.rb +321 -0
  267. data/lib/zippendo/models/list_carrier_products200_response_inner_additional_parameters_inner_options_inner.rb +219 -0
  268. data/lib/zippendo/models/list_carrier_products200_response_inner_services_inner.rb +192 -0
  269. data/lib/zippendo/models/list_carrier_products200_response_inner_weight_limits.rb +244 -0
  270. data/lib/zippendo/models/list_carriers200_response.rb +275 -0
  271. data/lib/zippendo/models/list_carriers200_response_data_inner.rb +369 -0
  272. data/lib/zippendo/models/list_carriers200_response_data_inner_config_value.rb +104 -0
  273. data/lib/zippendo/models/list_orders200_response.rb +275 -0
  274. data/lib/zippendo/models/list_orders200_response_data_inner.rb +423 -0
  275. data/lib/zippendo/models/list_orders200_response_data_inner_order_channel.rb +244 -0
  276. data/lib/zippendo/models/list_org_webhook_deliveries200_response.rb +275 -0
  277. data/lib/zippendo/models/list_org_webhook_deliveries200_response_data_inner.rb +365 -0
  278. data/lib/zippendo/models/list_org_webhooks200_response.rb +275 -0
  279. data/lib/zippendo/models/list_org_webhooks200_response_data_inner.rb +329 -0
  280. data/lib/zippendo/models/list_shipments200_response.rb +275 -0
  281. data/lib/zippendo/models/list_shipments200_response_data_inner.rb +362 -0
  282. data/lib/zippendo/models/list_shipments200_response_data_inner_address.rb +553 -0
  283. data/lib/zippendo/models/list_shipments200_response_data_inner_carrier_settings.rb +250 -0
  284. data/lib/zippendo/models/list_shipments200_response_data_inner_carrier_settings_additional_parameters_value.rb +105 -0
  285. data/lib/zippendo/models/list_shipments200_response_data_inner_carrier_settings_additional_parameters_value_any_of.rb +259 -0
  286. data/lib/zippendo/models/list_shipping_rules200_response.rb +275 -0
  287. data/lib/zippendo/models/list_shipping_rules200_response_data_inner.rb +992 -0
  288. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_additional_parameters_inner.rb +201 -0
  289. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_carrier.rb +329 -0
  290. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner.rb +107 -0
  291. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of.rb +342 -0
  292. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of1.rb +364 -0
  293. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of2.rb +371 -0
  294. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of3.rb +344 -0
  295. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of4.rb +270 -0
  296. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_label_printer.rb +192 -0
  297. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_return_shipping_rule.rb +192 -0
  298. data/lib/zippendo/models/revoke_api_token200_response.rb +165 -0
  299. data/lib/zippendo/models/send_shipment422_response.rb +265 -0
  300. data/lib/zippendo/models/send_shipment422_response_errors_inner.rb +175 -0
  301. data/lib/zippendo/models/split_shipment201_response.rb +190 -0
  302. data/lib/zippendo/models/split_shipment_parcel200_response.rb +164 -0
  303. data/lib/zippendo/models/split_shipment_parcel_request.rb +176 -0
  304. data/lib/zippendo/models/split_shipment_parcel_request_parcels_inner.rb +186 -0
  305. data/lib/zippendo/models/split_shipment_request.rb +231 -0
  306. data/lib/zippendo/models/test_org_webhook200_response.rb +165 -0
  307. data/lib/zippendo/models/track_shipment200_response.rb +251 -0
  308. data/lib/zippendo/models/track_shipment200_response_events_inner.rb +296 -0
  309. data/lib/zippendo/models/update_address_request.rb +471 -0
  310. data/lib/zippendo/models/update_api_token_request.rb +183 -0
  311. data/lib/zippendo/models/update_carrier_request.rb +208 -0
  312. data/lib/zippendo/models/update_order_request.rb +400 -0
  313. data/lib/zippendo/models/update_org200_response.rb +414 -0
  314. data/lib/zippendo/models/update_org_branding_request.rb +194 -0
  315. data/lib/zippendo/models/update_org_request.rb +389 -0
  316. data/lib/zippendo/models/update_org_webhook_request.rb +235 -0
  317. data/lib/zippendo/models/update_shipment_request.rb +394 -0
  318. data/lib/zippendo/models/update_shipping_rule_request.rb +531 -0
  319. data/lib/zippendo/models/verify_api_token200_response.rb +218 -0
  320. data/lib/zippendo/models/verify_api_token_request.rb +165 -0
  321. data/lib/zippendo/version.rb +15 -0
  322. data/lib/zippendo.rb +195 -0
  323. data/spec/api/addresses_api_spec.rb +103 -0
  324. data/spec/api/billing_api_spec.rb +47 -0
  325. data/spec/api/carrier_catalog_api_spec.rb +47 -0
  326. data/spec/api/carriers_api_spec.rb +130 -0
  327. data/spec/api/orders_api_spec.rb +105 -0
  328. data/spec/api/orgs_api_spec.rb +122 -0
  329. data/spec/api/quotes_api_spec.rb +48 -0
  330. data/spec/api/rules_api_spec.rb +102 -0
  331. data/spec/api/shipments_api_spec.rb +212 -0
  332. data/spec/api/system_api_spec.rb +46 -0
  333. data/spec/api/tokens_api_spec.rb +114 -0
  334. data/spec/api/webhooks_api_spec.rb +130 -0
  335. data/spec/models/batch_send_shipments200_response_results_inner_spec.rb +68 -0
  336. data/spec/models/batch_send_shipments200_response_spec.rb +42 -0
  337. data/spec/models/batch_send_shipments200_response_summary_spec.rb +48 -0
  338. data/spec/models/batch_send_shipments_request_spec.rb +36 -0
  339. data/spec/models/batch_split_shipment201_response_spec.rb +42 -0
  340. data/spec/models/batch_split_shipment_request_shipments_inner_order_lines_inner_spec.rb +42 -0
  341. data/spec/models/batch_split_shipment_request_shipments_inner_spec.rb +42 -0
  342. data/spec/models/batch_split_shipment_request_spec.rb +66 -0
  343. data/spec/models/connect_carrier_request_spec.rb +48 -0
  344. data/spec/models/create_address_request_spec.rb +106 -0
  345. data/spec/models/create_api_token201_response_spec.rb +78 -0
  346. data/spec/models/create_api_token_request_spec.rb +52 -0
  347. data/spec/models/create_order201_response_order_lines_inner_spec.rb +148 -0
  348. data/spec/models/create_order201_response_shipping_address_spec.rb +108 -0
  349. data/spec/models/create_order201_response_spec.rb +142 -0
  350. data/spec/models/create_order_request_order_lines_inner_spec.rb +148 -0
  351. data/spec/models/create_order_request_shipping_address_spec.rb +108 -0
  352. data/spec/models/create_order_request_spec.rb +102 -0
  353. data/spec/models/create_org_webhook201_response_spec.rb +78 -0
  354. data/spec/models/create_org_webhook_request_spec.rb +58 -0
  355. data/spec/models/create_shipment201_response_activities_inner_spec.rb +64 -0
  356. data/spec/models/create_shipment201_response_documents_inner_spec.rb +90 -0
  357. data/spec/models/create_shipment201_response_errors_inner_spec.rb +60 -0
  358. data/spec/models/create_shipment201_response_logs_inner_spec.rb +82 -0
  359. data/spec/models/create_shipment201_response_parcels_inner_dimensions_spec.rb +48 -0
  360. data/spec/models/create_shipment201_response_parcels_inner_order_lines_inner_spec.rb +90 -0
  361. data/spec/models/create_shipment201_response_parcels_inner_spec.rb +100 -0
  362. data/spec/models/create_shipment201_response_parties_inner_attributes_inner_spec.rb +42 -0
  363. data/spec/models/create_shipment201_response_parties_inner_spec.rb +100 -0
  364. data/spec/models/create_shipment201_response_pickup_details_spec.rb +54 -0
  365. data/spec/models/create_shipment201_response_shipping_rule_spec.rb +102 -0
  366. data/spec/models/create_shipment201_response_spec.rb +182 -0
  367. data/spec/models/create_shipment201_response_tracking_spec.rb +66 -0
  368. data/spec/models/create_shipment_request_carrier_settings_spec.rb +54 -0
  369. data/spec/models/create_shipment_request_parcels_inner_dimensions_spec.rb +48 -0
  370. data/spec/models/create_shipment_request_parcels_inner_order_lines_inner_spec.rb +90 -0
  371. data/spec/models/create_shipment_request_parcels_inner_spec.rb +100 -0
  372. data/spec/models/create_shipment_request_parties_inner_attributes_inner_spec.rb +42 -0
  373. data/spec/models/create_shipment_request_parties_inner_spec.rb +100 -0
  374. data/spec/models/create_shipment_request_pickup_details_spec.rb +54 -0
  375. data/spec/models/create_shipment_request_spec.rb +116 -0
  376. data/spec/models/create_shipping_quote200_response_rates_inner_spec.rb +96 -0
  377. data/spec/models/create_shipping_quote200_response_spec.rb +36 -0
  378. data/spec/models/create_shipping_quote400_response_spec.rb +42 -0
  379. data/spec/models/create_shipping_quote404_response_spec.rb +42 -0
  380. data/spec/models/create_shipping_quote_request_destination_spec.rb +66 -0
  381. data/spec/models/create_shipping_quote_request_items_inner_spec.rb +72 -0
  382. data/spec/models/create_shipping_quote_request_spec.rb +54 -0
  383. data/spec/models/create_shipping_rule201_response_spec.rb +208 -0
  384. data/spec/models/create_shipping_rule_request_additional_parameters_any_of_inner_spec.rb +42 -0
  385. data/spec/models/create_shipping_rule_request_additional_parameters_any_of_value_any_of_coordinates_inner_spec.rb +21 -0
  386. data/spec/models/create_shipping_rule_request_additional_parameters_any_of_value_any_of_spec.rb +54 -0
  387. data/spec/models/create_shipping_rule_request_additional_parameters_any_of_value_spec.rb +21 -0
  388. data/spec/models/create_shipping_rule_request_additional_parameters_spec.rb +21 -0
  389. data/spec/models/create_shipping_rule_request_conditions_inner_one_of1_spec.rb +78 -0
  390. data/spec/models/create_shipping_rule_request_conditions_inner_one_of2_spec.rb +74 -0
  391. data/spec/models/create_shipping_rule_request_conditions_inner_one_of3_spec.rb +68 -0
  392. data/spec/models/create_shipping_rule_request_conditions_inner_one_of4_spec.rb +52 -0
  393. data/spec/models/create_shipping_rule_request_conditions_inner_one_of_spec.rb +64 -0
  394. data/spec/models/create_shipping_rule_request_conditions_inner_spec.rb +32 -0
  395. data/spec/models/create_shipping_rule_request_spec.rb +184 -0
  396. data/spec/models/delete_org_webhook200_response_spec.rb +36 -0
  397. data/spec/models/delete_shipping_rule200_response_spec.rb +36 -0
  398. data/spec/models/get_billing_usage200_response_add_ons_inner_spec.rb +58 -0
  399. data/spec/models/get_billing_usage200_response_current_period_spec.rb +42 -0
  400. data/spec/models/get_billing_usage200_response_limits_spec.rb +72 -0
  401. data/spec/models/get_billing_usage200_response_limits_team_members_spec.rb +42 -0
  402. data/spec/models/get_billing_usage200_response_shipments_spec.rb +54 -0
  403. data/spec/models/get_billing_usage200_response_spec.rb +54 -0
  404. data/spec/models/get_order200_response_shipments_inner_spec.rb +98 -0
  405. data/spec/models/get_order200_response_shipping_rule_spec.rb +102 -0
  406. data/spec/models/get_order200_response_spec.rb +160 -0
  407. data/spec/models/get_org200_response_count_spec.rb +36 -0
  408. data/spec/models/get_org200_response_spec.rb +132 -0
  409. data/spec/models/get_org_branding200_response_spec.rb +48 -0
  410. data/spec/models/health_check200_response_spec.rb +48 -0
  411. data/spec/models/list_addresses200_response_data_inner_spec.rb +130 -0
  412. data/spec/models/list_addresses200_response_spec.rb +60 -0
  413. data/spec/models/list_api_tokens200_response_data_inner_created_by_spec.rb +48 -0
  414. data/spec/models/list_api_tokens200_response_data_inner_spec.rb +78 -0
  415. data/spec/models/list_api_tokens200_response_spec.rb +60 -0
  416. data/spec/models/list_api_tokens401_response_spec.rb +52 -0
  417. data/spec/models/list_available_carriers200_response_inner_required_fields_inner_spec.rb +70 -0
  418. data/spec/models/list_available_carriers200_response_inner_spec.rb +96 -0
  419. data/spec/models/list_carrier_product_service_points200_response_inner_address_spec.rb +66 -0
  420. data/spec/models/list_carrier_product_service_points200_response_inner_spec.rb +78 -0
  421. data/spec/models/list_carrier_product_service_points_request_spec.rb +66 -0
  422. data/spec/models/list_carrier_products200_response_inner_additional_parameters_inner_options_inner_spec.rb +48 -0
  423. data/spec/models/list_carrier_products200_response_inner_additional_parameters_inner_spec.rb +76 -0
  424. data/spec/models/list_carrier_products200_response_inner_services_inner_spec.rb +42 -0
  425. data/spec/models/list_carrier_products200_response_inner_spec.rb +100 -0
  426. data/spec/models/list_carrier_products200_response_inner_weight_limits_spec.rb +52 -0
  427. data/spec/models/list_carriers200_response_data_inner_config_value_spec.rb +21 -0
  428. data/spec/models/list_carriers200_response_data_inner_spec.rb +96 -0
  429. data/spec/models/list_carriers200_response_spec.rb +60 -0
  430. data/spec/models/list_orders200_response_data_inner_order_channel_spec.rb +52 -0
  431. data/spec/models/list_orders200_response_data_inner_spec.rb +106 -0
  432. data/spec/models/list_orders200_response_spec.rb +60 -0
  433. data/spec/models/list_org_webhook_deliveries200_response_data_inner_spec.rb +96 -0
  434. data/spec/models/list_org_webhook_deliveries200_response_spec.rb +60 -0
  435. data/spec/models/list_org_webhooks200_response_data_inner_spec.rb +72 -0
  436. data/spec/models/list_org_webhooks200_response_spec.rb +60 -0
  437. data/spec/models/list_shipments200_response_data_inner_address_spec.rb +130 -0
  438. data/spec/models/list_shipments200_response_data_inner_carrier_settings_additional_parameters_value_any_of_spec.rb +54 -0
  439. data/spec/models/list_shipments200_response_data_inner_carrier_settings_additional_parameters_value_spec.rb +21 -0
  440. data/spec/models/list_shipments200_response_data_inner_carrier_settings_spec.rb +54 -0
  441. data/spec/models/list_shipments200_response_data_inner_spec.rb +86 -0
  442. data/spec/models/list_shipments200_response_spec.rb +60 -0
  443. data/spec/models/list_shipping_rules200_response_data_inner_additional_parameters_inner_spec.rb +42 -0
  444. data/spec/models/list_shipping_rules200_response_data_inner_carrier_spec.rb +72 -0
  445. data/spec/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of1_spec.rb +78 -0
  446. data/spec/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of2_spec.rb +74 -0
  447. data/spec/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of3_spec.rb +68 -0
  448. data/spec/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of4_spec.rb +52 -0
  449. data/spec/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of_spec.rb +64 -0
  450. data/spec/models/list_shipping_rules200_response_data_inner_conditions_inner_spec.rb +32 -0
  451. data/spec/models/list_shipping_rules200_response_data_inner_label_printer_spec.rb +42 -0
  452. data/spec/models/list_shipping_rules200_response_data_inner_return_shipping_rule_spec.rb +42 -0
  453. data/spec/models/list_shipping_rules200_response_data_inner_spec.rb +238 -0
  454. data/spec/models/list_shipping_rules200_response_spec.rb +60 -0
  455. data/spec/models/revoke_api_token200_response_spec.rb +36 -0
  456. data/spec/models/send_shipment422_response_errors_inner_spec.rb +42 -0
  457. data/spec/models/send_shipment422_response_spec.rb +58 -0
  458. data/spec/models/split_shipment201_response_spec.rb +42 -0
  459. data/spec/models/split_shipment_parcel200_response_spec.rb +36 -0
  460. data/spec/models/split_shipment_parcel_request_parcels_inner_spec.rb +42 -0
  461. data/spec/models/split_shipment_parcel_request_spec.rb +36 -0
  462. data/spec/models/split_shipment_request_spec.rb +72 -0
  463. data/spec/models/test_org_webhook200_response_spec.rb +36 -0
  464. data/spec/models/track_shipment200_response_events_inner_spec.rb +70 -0
  465. data/spec/models/track_shipment200_response_spec.rb +64 -0
  466. data/spec/models/update_address_request_spec.rb +106 -0
  467. data/spec/models/update_api_token_request_spec.rb +36 -0
  468. data/spec/models/update_carrier_request_spec.rb +48 -0
  469. data/spec/models/update_order_request_spec.rb +100 -0
  470. data/spec/models/update_org200_response_spec.rb +126 -0
  471. data/spec/models/update_org_branding_request_spec.rb +42 -0
  472. data/spec/models/update_org_request_spec.rb +118 -0
  473. data/spec/models/update_org_webhook_request_spec.rb +58 -0
  474. data/spec/models/update_shipment_request_spec.rb +122 -0
  475. data/spec/models/update_shipping_rule_request_spec.rb +184 -0
  476. data/spec/models/verify_api_token200_response_spec.rb +66 -0
  477. data/spec/models/verify_api_token_request_spec.rb +36 -0
  478. data/spec/spec_helper.rb +111 -0
  479. data/zippendo.gemspec +39 -0
  480. metadata +715 -0
@@ -0,0 +1,204 @@
1
+ =begin
2
+ #Zippendo Public API
3
+
4
+ #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_).
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: support@zippendo.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.24.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zippendo
17
+ class CreateShipment201ResponseTracking < ApiModelBase
18
+ # Public carrier tracking URL.
19
+ attr_accessor :url
20
+
21
+ # Carrier tracking number.
22
+ attr_accessor :number
23
+
24
+ # Label-free drop-off code.
25
+ attr_accessor :label_free_code
26
+
27
+ # DEPRECATED — use `qrCodeDataUri` (embeddable data URI) or `qrCodeUrl` (hosted link). Catch-all that carries whichever applies, kept populated for backwards compatibility during the migration and until it is disabled.
28
+ attr_accessor :qr_code_link
29
+
30
+ # Embeddable `data:` URI of the QR code image for label-free drop-off — base64 image bytes you can drop straight into an <img>/email. Null when the carrier returns a hosted link instead (see `qrCodeUrl`).
31
+ attr_accessor :qr_code_data_uri
32
+
33
+ # Carrier-hosted URL of the QR code image for label-free drop-off, returned by carriers (e.g. Bring) that link to the image rather than embedding it. Null when the carrier returns embeddable bytes (see `qrCodeDataUri`).
34
+ attr_accessor :qr_code_url
35
+
36
+ # Attribute mapping from ruby-style variable name to JSON key.
37
+ def self.attribute_map
38
+ {
39
+ :'url' => :'url',
40
+ :'number' => :'number',
41
+ :'label_free_code' => :'labelFreeCode',
42
+ :'qr_code_link' => :'qrCodeLink',
43
+ :'qr_code_data_uri' => :'qrCodeDataUri',
44
+ :'qr_code_url' => :'qrCodeUrl'
45
+ }
46
+ end
47
+
48
+ # Returns attribute mapping this model knows about
49
+ def self.acceptable_attribute_map
50
+ attribute_map
51
+ end
52
+
53
+ # Returns all the JSON keys this model knows about
54
+ def self.acceptable_attributes
55
+ acceptable_attribute_map.values
56
+ end
57
+
58
+ # Attribute type mapping.
59
+ def self.openapi_types
60
+ {
61
+ :'url' => :'String',
62
+ :'number' => :'String',
63
+ :'label_free_code' => :'String',
64
+ :'qr_code_link' => :'String',
65
+ :'qr_code_data_uri' => :'String',
66
+ :'qr_code_url' => :'String'
67
+ }
68
+ end
69
+
70
+ # List of attributes with nullable: true
71
+ def self.openapi_nullable
72
+ Set.new([
73
+ :'url',
74
+ :'number',
75
+ :'label_free_code',
76
+ :'qr_code_link',
77
+ :'qr_code_data_uri',
78
+ :'qr_code_url'
79
+ ])
80
+ end
81
+
82
+ # Initializes the object
83
+ # @param [Hash] attributes Model attributes in the form of hash
84
+ def initialize(attributes = {})
85
+ if (!attributes.is_a?(Hash))
86
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zippendo::CreateShipment201ResponseTracking` initialize method"
87
+ end
88
+
89
+ # check to see if the attribute exists and convert string to symbol for hash key
90
+ acceptable_attribute_map = self.class.acceptable_attribute_map
91
+ attributes = attributes.each_with_object({}) { |(k, v), h|
92
+ if (!acceptable_attribute_map.key?(k.to_sym))
93
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zippendo::CreateShipment201ResponseTracking`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
94
+ end
95
+ h[k.to_sym] = v
96
+ }
97
+
98
+ if attributes.key?(:'url')
99
+ self.url = attributes[:'url']
100
+ end
101
+
102
+ if attributes.key?(:'number')
103
+ self.number = attributes[:'number']
104
+ end
105
+
106
+ if attributes.key?(:'label_free_code')
107
+ self.label_free_code = attributes[:'label_free_code']
108
+ end
109
+
110
+ if attributes.key?(:'qr_code_link')
111
+ self.qr_code_link = attributes[:'qr_code_link']
112
+ end
113
+
114
+ if attributes.key?(:'qr_code_data_uri')
115
+ self.qr_code_data_uri = attributes[:'qr_code_data_uri']
116
+ end
117
+
118
+ if attributes.key?(:'qr_code_url')
119
+ self.qr_code_url = attributes[:'qr_code_url']
120
+ end
121
+ end
122
+
123
+ # Show invalid properties with the reasons. Usually used together with valid?
124
+ # @return Array for valid properties with the reasons
125
+ def list_invalid_properties
126
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
127
+ invalid_properties = Array.new
128
+ invalid_properties
129
+ end
130
+
131
+ # Check to see if the all the properties in the model are valid
132
+ # @return true if the model is valid
133
+ def valid?
134
+ warn '[DEPRECATED] the `valid?` method is obsolete'
135
+ true
136
+ end
137
+
138
+ # Checks equality by comparing each attribute.
139
+ # @param [Object] Object to be compared
140
+ def ==(o)
141
+ return true if self.equal?(o)
142
+ self.class == o.class &&
143
+ url == o.url &&
144
+ number == o.number &&
145
+ label_free_code == o.label_free_code &&
146
+ qr_code_link == o.qr_code_link &&
147
+ qr_code_data_uri == o.qr_code_data_uri &&
148
+ qr_code_url == o.qr_code_url
149
+ end
150
+
151
+ # @see the `==` method
152
+ # @param [Object] Object to be compared
153
+ def eql?(o)
154
+ self == o
155
+ end
156
+
157
+ # Calculates hash code according to all attributes.
158
+ # @return [Integer] Hash code
159
+ def hash
160
+ [url, number, label_free_code, qr_code_link, qr_code_data_uri, qr_code_url].hash
161
+ end
162
+
163
+ # Builds the object from hash
164
+ # @param [Hash] attributes Model attributes in the form of hash
165
+ # @return [Object] Returns the model itself
166
+ def self.build_from_hash(attributes)
167
+ return nil unless attributes.is_a?(Hash)
168
+ attributes = attributes.transform_keys(&:to_sym)
169
+ transformed_hash = {}
170
+ openapi_types.each_pair do |key, type|
171
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
172
+ transformed_hash["#{key}"] = nil
173
+ elsif type =~ /\AArray<(.*)>/i
174
+ # check to ensure the input is an array given that the attribute
175
+ # is documented as an array but the input is not
176
+ if attributes[attribute_map[key]].is_a?(Array)
177
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
178
+ end
179
+ elsif !attributes[attribute_map[key]].nil?
180
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
181
+ end
182
+ end
183
+ new(transformed_hash)
184
+ end
185
+
186
+ # Returns the object in the form of hash
187
+ # @return [Hash] Returns the object in the form of hash
188
+ def to_hash
189
+ hash = {}
190
+ self.class.attribute_map.each_pair do |attr, param|
191
+ value = self.send(attr)
192
+ if value.nil?
193
+ is_nullable = self.class.openapi_nullable.include?(attr)
194
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
195
+ end
196
+
197
+ hash[param] = _to_hash(value)
198
+ end
199
+ hash
200
+ end
201
+
202
+ end
203
+
204
+ end
@@ -0,0 +1,407 @@
1
+ =begin
2
+ #Zippendo Public API
3
+
4
+ #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_).
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: support@zippendo.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.24.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zippendo
17
+ class CreateShipmentRequest < ApiModelBase
18
+ # Customer-facing shipment reference.
19
+ attr_accessor :reference
20
+
21
+ # Sender address identifier.
22
+ attr_accessor :address_id
23
+
24
+ # Selected carrier service point identifier.
25
+ attr_accessor :service_point_id
26
+
27
+ # Parties involved in the shipment. Optional when orderId is provided.
28
+ attr_accessor :parties
29
+
30
+ # Direction of the shipment relative to the organization.
31
+ attr_accessor :type
32
+
33
+ attr_accessor :carrier_settings
34
+
35
+ # Parcels to include. Optional when orderId is provided.
36
+ attr_accessor :parcels
37
+
38
+ attr_accessor :pickup_details
39
+
40
+ # Incoterm governing the shipment.
41
+ attr_accessor :term_of_trade
42
+
43
+ # Lifecycle status of the shipment.
44
+ attr_accessor :status
45
+
46
+ # Order to derive parties and parcels from.
47
+ attr_accessor :order_id
48
+
49
+ # Printer to assign for labels.
50
+ attr_accessor :label_printer_id
51
+
52
+ # Printer to assign for documents.
53
+ attr_accessor :document_printer_id
54
+
55
+ class EnumAttributeValidator
56
+ attr_reader :datatype
57
+ attr_reader :allowable_values
58
+
59
+ def initialize(datatype, allowable_values)
60
+ @allowable_values = allowable_values.map do |value|
61
+ case datatype.to_s
62
+ when /Integer/i
63
+ value.to_i
64
+ when /Float/i
65
+ value.to_f
66
+ else
67
+ value
68
+ end
69
+ end
70
+ end
71
+
72
+ def valid?(value)
73
+ !value || allowable_values.include?(value)
74
+ end
75
+ end
76
+
77
+ # Attribute mapping from ruby-style variable name to JSON key.
78
+ def self.attribute_map
79
+ {
80
+ :'reference' => :'reference',
81
+ :'address_id' => :'addressId',
82
+ :'service_point_id' => :'servicePointId',
83
+ :'parties' => :'parties',
84
+ :'type' => :'type',
85
+ :'carrier_settings' => :'carrierSettings',
86
+ :'parcels' => :'parcels',
87
+ :'pickup_details' => :'pickupDetails',
88
+ :'term_of_trade' => :'termOfTrade',
89
+ :'status' => :'status',
90
+ :'order_id' => :'orderId',
91
+ :'label_printer_id' => :'labelPrinterId',
92
+ :'document_printer_id' => :'documentPrinterId'
93
+ }
94
+ end
95
+
96
+ # Returns attribute mapping this model knows about
97
+ def self.acceptable_attribute_map
98
+ attribute_map
99
+ end
100
+
101
+ # Returns all the JSON keys this model knows about
102
+ def self.acceptable_attributes
103
+ acceptable_attribute_map.values
104
+ end
105
+
106
+ # Attribute type mapping.
107
+ def self.openapi_types
108
+ {
109
+ :'reference' => :'String',
110
+ :'address_id' => :'String',
111
+ :'service_point_id' => :'String',
112
+ :'parties' => :'Array<CreateShipmentRequestPartiesInner>',
113
+ :'type' => :'String',
114
+ :'carrier_settings' => :'CreateShipmentRequestCarrierSettings',
115
+ :'parcels' => :'Array<CreateShipmentRequestParcelsInner>',
116
+ :'pickup_details' => :'CreateShipmentRequestPickupDetails',
117
+ :'term_of_trade' => :'String',
118
+ :'status' => :'String',
119
+ :'order_id' => :'String',
120
+ :'label_printer_id' => :'String',
121
+ :'document_printer_id' => :'String'
122
+ }
123
+ end
124
+
125
+ # List of attributes with nullable: true
126
+ def self.openapi_nullable
127
+ Set.new([
128
+ :'address_id',
129
+ :'service_point_id',
130
+ :'pickup_details',
131
+ :'order_id',
132
+ :'label_printer_id',
133
+ :'document_printer_id'
134
+ ])
135
+ end
136
+
137
+ # Initializes the object
138
+ # @param [Hash] attributes Model attributes in the form of hash
139
+ def initialize(attributes = {})
140
+ if (!attributes.is_a?(Hash))
141
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zippendo::CreateShipmentRequest` initialize method"
142
+ end
143
+
144
+ # check to see if the attribute exists and convert string to symbol for hash key
145
+ acceptable_attribute_map = self.class.acceptable_attribute_map
146
+ attributes = attributes.each_with_object({}) { |(k, v), h|
147
+ if (!acceptable_attribute_map.key?(k.to_sym))
148
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zippendo::CreateShipmentRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
149
+ end
150
+ h[k.to_sym] = v
151
+ }
152
+
153
+ if attributes.key?(:'reference')
154
+ self.reference = attributes[:'reference']
155
+ end
156
+
157
+ if attributes.key?(:'address_id')
158
+ self.address_id = attributes[:'address_id']
159
+ end
160
+
161
+ if attributes.key?(:'service_point_id')
162
+ self.service_point_id = attributes[:'service_point_id']
163
+ end
164
+
165
+ if attributes.key?(:'parties')
166
+ if (value = attributes[:'parties']).is_a?(Array)
167
+ self.parties = value
168
+ end
169
+ end
170
+
171
+ if attributes.key?(:'type')
172
+ self.type = attributes[:'type']
173
+ else
174
+ self.type = nil
175
+ end
176
+
177
+ if attributes.key?(:'carrier_settings')
178
+ self.carrier_settings = attributes[:'carrier_settings']
179
+ else
180
+ self.carrier_settings = nil
181
+ end
182
+
183
+ if attributes.key?(:'parcels')
184
+ if (value = attributes[:'parcels']).is_a?(Array)
185
+ self.parcels = value
186
+ end
187
+ end
188
+
189
+ if attributes.key?(:'pickup_details')
190
+ self.pickup_details = attributes[:'pickup_details']
191
+ end
192
+
193
+ if attributes.key?(:'term_of_trade')
194
+ self.term_of_trade = attributes[:'term_of_trade']
195
+ else
196
+ self.term_of_trade = 'DAP'
197
+ end
198
+
199
+ if attributes.key?(:'status')
200
+ self.status = attributes[:'status']
201
+ else
202
+ self.status = 'pending'
203
+ end
204
+
205
+ if attributes.key?(:'order_id')
206
+ self.order_id = attributes[:'order_id']
207
+ end
208
+
209
+ if attributes.key?(:'label_printer_id')
210
+ self.label_printer_id = attributes[:'label_printer_id']
211
+ end
212
+
213
+ if attributes.key?(:'document_printer_id')
214
+ self.document_printer_id = attributes[:'document_printer_id']
215
+ end
216
+ end
217
+
218
+ # Show invalid properties with the reasons. Usually used together with valid?
219
+ # @return Array for valid properties with the reasons
220
+ def list_invalid_properties
221
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
222
+ invalid_properties = Array.new
223
+ if !@reference.nil? && @reference.to_s.length < 1
224
+ invalid_properties.push('invalid value for "reference", the character length must be greater than or equal to 1.')
225
+ end
226
+
227
+ if !@parties.nil? && @parties.length < 1
228
+ invalid_properties.push('invalid value for "parties", number of items must be greater than or equal to 1.')
229
+ end
230
+
231
+ if @type.nil?
232
+ invalid_properties.push('invalid value for "type", type cannot be nil.')
233
+ end
234
+
235
+ if @carrier_settings.nil?
236
+ invalid_properties.push('invalid value for "carrier_settings", carrier_settings cannot be nil.')
237
+ end
238
+
239
+ if !@parcels.nil? && @parcels.length < 1
240
+ invalid_properties.push('invalid value for "parcels", number of items must be greater than or equal to 1.')
241
+ end
242
+
243
+ invalid_properties
244
+ end
245
+
246
+ # Check to see if the all the properties in the model are valid
247
+ # @return true if the model is valid
248
+ def valid?
249
+ warn '[DEPRECATED] the `valid?` method is obsolete'
250
+ return false if !@reference.nil? && @reference.to_s.length < 1
251
+ return false if !@parties.nil? && @parties.length < 1
252
+ return false if @type.nil?
253
+ type_validator = EnumAttributeValidator.new('String', ["outbound", "inbound"])
254
+ return false unless type_validator.valid?(@type)
255
+ return false if @carrier_settings.nil?
256
+ return false if !@parcels.nil? && @parcels.length < 1
257
+ status_validator = EnumAttributeValidator.new('String', ["draft", "pending", "processing", "dispatched", "partly_dispatched", "error", "cancelled", "on_hold"])
258
+ return false unless status_validator.valid?(@status)
259
+ true
260
+ end
261
+
262
+ # Custom attribute writer method with validation
263
+ # @param [Object] reference Value to be assigned
264
+ def reference=(reference)
265
+ if reference.nil?
266
+ fail ArgumentError, 'reference cannot be nil'
267
+ end
268
+
269
+ if reference.to_s.length < 1
270
+ fail ArgumentError, 'invalid value for "reference", the character length must be greater than or equal to 1.'
271
+ end
272
+
273
+ @reference = reference
274
+ end
275
+
276
+ # Custom attribute writer method with validation
277
+ # @param [Object] parties Value to be assigned
278
+ def parties=(parties)
279
+ if parties.nil?
280
+ fail ArgumentError, 'parties cannot be nil'
281
+ end
282
+
283
+ if parties.length < 1
284
+ fail ArgumentError, 'invalid value for "parties", number of items must be greater than or equal to 1.'
285
+ end
286
+
287
+ @parties = parties
288
+ end
289
+
290
+ # Custom attribute writer method checking allowed values (enum).
291
+ # @param [Object] type Object to be assigned
292
+ def type=(type)
293
+ validator = EnumAttributeValidator.new('String', ["outbound", "inbound"])
294
+ unless validator.valid?(type)
295
+ fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
296
+ end
297
+ @type = type
298
+ end
299
+
300
+ # Custom attribute writer method with validation
301
+ # @param [Object] carrier_settings Value to be assigned
302
+ def carrier_settings=(carrier_settings)
303
+ if carrier_settings.nil?
304
+ fail ArgumentError, 'carrier_settings cannot be nil'
305
+ end
306
+
307
+ @carrier_settings = carrier_settings
308
+ end
309
+
310
+ # Custom attribute writer method with validation
311
+ # @param [Object] parcels Value to be assigned
312
+ def parcels=(parcels)
313
+ if parcels.nil?
314
+ fail ArgumentError, 'parcels cannot be nil'
315
+ end
316
+
317
+ if parcels.length < 1
318
+ fail ArgumentError, 'invalid value for "parcels", number of items must be greater than or equal to 1.'
319
+ end
320
+
321
+ @parcels = parcels
322
+ end
323
+
324
+ # Custom attribute writer method checking allowed values (enum).
325
+ # @param [Object] status Object to be assigned
326
+ def status=(status)
327
+ validator = EnumAttributeValidator.new('String', ["draft", "pending", "processing", "dispatched", "partly_dispatched", "error", "cancelled", "on_hold"])
328
+ unless validator.valid?(status)
329
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
330
+ end
331
+ @status = status
332
+ end
333
+
334
+ # Checks equality by comparing each attribute.
335
+ # @param [Object] Object to be compared
336
+ def ==(o)
337
+ return true if self.equal?(o)
338
+ self.class == o.class &&
339
+ reference == o.reference &&
340
+ address_id == o.address_id &&
341
+ service_point_id == o.service_point_id &&
342
+ parties == o.parties &&
343
+ type == o.type &&
344
+ carrier_settings == o.carrier_settings &&
345
+ parcels == o.parcels &&
346
+ pickup_details == o.pickup_details &&
347
+ term_of_trade == o.term_of_trade &&
348
+ status == o.status &&
349
+ order_id == o.order_id &&
350
+ label_printer_id == o.label_printer_id &&
351
+ document_printer_id == o.document_printer_id
352
+ end
353
+
354
+ # @see the `==` method
355
+ # @param [Object] Object to be compared
356
+ def eql?(o)
357
+ self == o
358
+ end
359
+
360
+ # Calculates hash code according to all attributes.
361
+ # @return [Integer] Hash code
362
+ def hash
363
+ [reference, address_id, service_point_id, parties, type, carrier_settings, parcels, pickup_details, term_of_trade, status, order_id, label_printer_id, document_printer_id].hash
364
+ end
365
+
366
+ # Builds the object from hash
367
+ # @param [Hash] attributes Model attributes in the form of hash
368
+ # @return [Object] Returns the model itself
369
+ def self.build_from_hash(attributes)
370
+ return nil unless attributes.is_a?(Hash)
371
+ attributes = attributes.transform_keys(&:to_sym)
372
+ transformed_hash = {}
373
+ openapi_types.each_pair do |key, type|
374
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
375
+ transformed_hash["#{key}"] = nil
376
+ elsif type =~ /\AArray<(.*)>/i
377
+ # check to ensure the input is an array given that the attribute
378
+ # is documented as an array but the input is not
379
+ if attributes[attribute_map[key]].is_a?(Array)
380
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
381
+ end
382
+ elsif !attributes[attribute_map[key]].nil?
383
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
384
+ end
385
+ end
386
+ new(transformed_hash)
387
+ end
388
+
389
+ # Returns the object in the form of hash
390
+ # @return [Hash] Returns the object in the form of hash
391
+ def to_hash
392
+ hash = {}
393
+ self.class.attribute_map.each_pair do |attr, param|
394
+ value = self.send(attr)
395
+ if value.nil?
396
+ is_nullable = self.class.openapi_nullable.include?(attr)
397
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
398
+ end
399
+
400
+ hash[param] = _to_hash(value)
401
+ end
402
+ hash
403
+ end
404
+
405
+ end
406
+
407
+ end