lob 5.4.6 → 6.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (496) hide show
  1. checksums.yaml +4 -4
  2. data/CODE_SNIPPETS.md +1871 -0
  3. data/Gemfile +6 -1
  4. data/Gemfile.lock +72 -0
  5. data/LICENSE +21 -0
  6. data/MIGRATION.md +174 -0
  7. data/README.md +70 -97
  8. data/Rakefile +7 -5
  9. data/__tests__/Api/Address.unit.rb +210 -0
  10. data/__tests__/Api/BankAccount.unit.rb +244 -0
  11. data/__tests__/Api/BillingGroup.unit.rb +170 -0
  12. data/__tests__/Api/Card.unit.rb +183 -0
  13. data/__tests__/Api/CardOrder.unit.rb +89 -0
  14. data/__tests__/Api/Check.unit.rb +185 -0
  15. data/__tests__/Api/IntlAutocompletion.unit.rb +43 -0
  16. data/__tests__/Api/IntlVerification.unit.rb +71 -0
  17. data/__tests__/Api/Letter.unit.rb +191 -0
  18. data/__tests__/Api/Postcard.unit.rb +189 -0
  19. data/__tests__/Api/Require.unit.rb +21 -0
  20. data/__tests__/Api/ReverseGeocodeLookup.unit.rb +43 -0
  21. data/__tests__/Api/SelfMailer.unit.rb +190 -0
  22. data/__tests__/Api/Template.unit.rb +165 -0
  23. data/__tests__/Api/TemplateVersion.unit.rb +165 -0
  24. data/__tests__/Api/UsAutocompletion.unit.rb +42 -0
  25. data/__tests__/Api/UsVerification.unit.rb +71 -0
  26. data/__tests__/Api/ZipLookup.unit.rb +42 -0
  27. data/__tests__/Integration/Address.spec.rb +200 -0
  28. data/__tests__/Integration/BankAccount.spec.rb +243 -0
  29. data/__tests__/Integration/BillingGroup.spec.rb +163 -0
  30. data/__tests__/Integration/Card.spec.rb +198 -0
  31. data/__tests__/Integration/CardOrder.spec.rb +122 -0
  32. data/__tests__/Integration/Check.spec.rb +361 -0
  33. data/__tests__/Integration/IntlAutocompletion.spec.rb +54 -0
  34. data/__tests__/Integration/IntlVerification.spec.rb +90 -0
  35. data/__tests__/Integration/Letter.spec.rb +286 -0
  36. data/__tests__/Integration/Postcard.spec.rb +214 -0
  37. data/__tests__/Integration/ReverseGeocodeLookup.spec.rb +30 -0
  38. data/__tests__/Integration/SelfMailer.spec.rb +270 -0
  39. data/__tests__/Integration/Template.spec.rb +221 -0
  40. data/__tests__/Integration/TemplateVersion.spec.rb +275 -0
  41. data/__tests__/Integration/UsAutocompletion.spec.rb +54 -0
  42. data/__tests__/Integration/UsVerification.spec.rb +102 -0
  43. data/__tests__/Integration/ZipLookup.spec.rb +29 -0
  44. data/__tests__/TestFixtures.rb +36 -0
  45. data/docs/Address.md +52 -0
  46. data/docs/AddressDeletion.md +22 -0
  47. data/docs/AddressDomestic.md +40 -0
  48. data/docs/AddressDomesticExpanded.md +40 -0
  49. data/docs/AddressEditable.md +40 -0
  50. data/docs/AddressList.md +28 -0
  51. data/docs/AddressesApi.md +303 -0
  52. data/docs/BankAccount.md +44 -0
  53. data/docs/BankAccountDeletion.md +22 -0
  54. data/docs/BankAccountList.md +28 -0
  55. data/docs/BankAccountVerify.md +18 -0
  56. data/docs/BankAccountWritable.md +28 -0
  57. data/docs/BankAccountsApi.md +376 -0
  58. data/docs/BankTypeEnum.md +15 -0
  59. data/docs/BillingGroup.md +28 -0
  60. data/docs/BillingGroupEditable.md +20 -0
  61. data/docs/BillingGroupList.md +26 -0
  62. data/docs/BillingGroupsApi.md +305 -0
  63. data/docs/Buckslip.md +60 -0
  64. data/docs/BuckslipDeletion.md +20 -0
  65. data/docs/BuckslipEditable.md +24 -0
  66. data/docs/BuckslipOrder.md +42 -0
  67. data/docs/BuckslipOrderEditable.md +18 -0
  68. data/docs/BuckslipOrdersApi.md +157 -0
  69. data/docs/BuckslipOrdersList.md +26 -0
  70. data/docs/BuckslipUpdatable.md +22 -0
  71. data/docs/BuckslipsApi.md +372 -0
  72. data/docs/BuckslipsList.md +28 -0
  73. data/docs/BulkError.md +18 -0
  74. data/docs/BulkErrorProperties.md +20 -0
  75. data/docs/Campaign.md +52 -0
  76. data/docs/CampaignCreative.md +42 -0
  77. data/docs/CampaignDeletion.md +20 -0
  78. data/docs/CampaignUpdatable.md +36 -0
  79. data/docs/CampaignWritable.md +36 -0
  80. data/docs/CampaignsApi.md +376 -0
  81. data/docs/CampaignsList.md +28 -0
  82. data/docs/Card.md +54 -0
  83. data/docs/CardDeletion.md +22 -0
  84. data/docs/CardEditable.md +24 -0
  85. data/docs/CardList.md +28 -0
  86. data/docs/CardOrder.md +42 -0
  87. data/docs/CardOrderEditable.md +18 -0
  88. data/docs/CardOrderList.md +26 -0
  89. data/docs/CardOrdersApi.md +157 -0
  90. data/docs/CardUpdatable.md +22 -0
  91. data/docs/CardsApi.md +372 -0
  92. data/docs/Check.md +68 -0
  93. data/docs/CheckDeletion.md +22 -0
  94. data/docs/CheckEditable.md +48 -0
  95. data/docs/CheckList.md +28 -0
  96. data/docs/ChecksApi.md +315 -0
  97. data/docs/CmpScheduleType.md +15 -0
  98. data/docs/CmpUseType.md +15 -0
  99. data/docs/CountryExtended.md +15 -0
  100. data/docs/CountryExtendedExpanded.md +15 -0
  101. data/docs/CreativePatch.md +22 -0
  102. data/docs/CreativeResponse.md +42 -0
  103. data/docs/CreativeWritable.md +34 -0
  104. data/docs/CreativesApi.md +226 -0
  105. data/docs/CustomEnvelopeReturned.md +22 -0
  106. data/docs/DefaultApi.md +75 -0
  107. data/docs/DeliverabilityAnalysis.md +46 -0
  108. data/docs/DpvFootnote.md +15 -0
  109. data/docs/EngineHtml.md +15 -0
  110. data/docs/EventType.md +24 -0
  111. data/docs/Events.md +28 -0
  112. data/docs/Export.md +32 -0
  113. data/docs/ExportModel.md +18 -0
  114. data/docs/GeocodeAddresses.md +20 -0
  115. data/docs/GeocodeComponents.md +20 -0
  116. data/docs/HTTPValidationError.md +18 -0
  117. data/docs/IdentityValidation.md +34 -0
  118. data/docs/IdentityValidationApi.md +78 -0
  119. data/docs/InlineObject.md +18 -0
  120. data/docs/IntlAutocompletions.md +20 -0
  121. data/docs/IntlAutocompletionsApi.md +82 -0
  122. data/docs/IntlAutocompletionsWritable.md +26 -0
  123. data/docs/IntlComponents.md +26 -0
  124. data/docs/IntlSuggestions.md +30 -0
  125. data/docs/IntlVerification.md +38 -0
  126. data/docs/IntlVerificationOrError.md +40 -0
  127. data/docs/IntlVerificationWritable.md +32 -0
  128. data/docs/IntlVerifications.md +20 -0
  129. data/docs/IntlVerificationsApi.md +153 -0
  130. data/docs/IntlVerificationsPayload.md +18 -0
  131. data/docs/Letter.md +72 -0
  132. data/docs/LetterCustomEnvelope.md +22 -0
  133. data/docs/LetterDeletion.md +22 -0
  134. data/docs/LetterDetailsReturned.md +36 -0
  135. data/docs/LetterDetailsWritable.md +32 -0
  136. data/docs/LetterEditable.md +52 -0
  137. data/docs/LetterList.md +28 -0
  138. data/docs/LettersApi.md +317 -0
  139. data/docs/LobConfidenceScore.md +20 -0
  140. data/docs/LobError.md +22 -0
  141. data/docs/Location.md +20 -0
  142. data/docs/LocationAnalysis.md +22 -0
  143. data/docs/MailType.md +15 -0
  144. data/docs/MultiLineAddress.md +32 -0
  145. data/docs/MultipleComponents.md +30 -0
  146. data/docs/MultipleComponentsIntl.md +30 -0
  147. data/docs/MultipleComponentsList.md +18 -0
  148. data/docs/PlaceholderModel.md +28 -0
  149. data/docs/Postcard.md +60 -0
  150. data/docs/PostcardDeletion.md +22 -0
  151. data/docs/PostcardDetailsReturned.md +26 -0
  152. data/docs/PostcardDetailsWritable.md +20 -0
  153. data/docs/PostcardEditable.md +40 -0
  154. data/docs/PostcardList.md +28 -0
  155. data/docs/PostcardSize.md +15 -0
  156. data/docs/PostcardsApi.md +317 -0
  157. data/docs/QrCode.md +30 -0
  158. data/docs/ReturnEnvelope.md +24 -0
  159. data/docs/ReverseGeocode.md +22 -0
  160. data/docs/ReverseGeocodeLookupsApi.md +82 -0
  161. data/docs/SelfMailer.md +48 -0
  162. data/docs/SelfMailerDeletion.md +22 -0
  163. data/docs/SelfMailerEditable.md +38 -0
  164. data/docs/SelfMailerList.md +28 -0
  165. data/docs/SelfMailerSize.md +15 -0
  166. data/docs/SelfMailersApi.md +317 -0
  167. data/docs/SortBy.md +20 -0
  168. data/docs/SortBy1.md +20 -0
  169. data/docs/SortBy2.md +20 -0
  170. data/docs/SortBy3.md +20 -0
  171. data/docs/SortByDateModified.md +20 -0
  172. data/docs/Suggestions.md +26 -0
  173. data/docs/Template.md +34 -0
  174. data/docs/TemplateDeletion.md +22 -0
  175. data/docs/TemplateList.md +28 -0
  176. data/docs/TemplateUpdate.md +20 -0
  177. data/docs/TemplateVersion.md +36 -0
  178. data/docs/TemplateVersionDeletion.md +22 -0
  179. data/docs/TemplateVersionList.md +28 -0
  180. data/docs/TemplateVersionUpdatable.md +20 -0
  181. data/docs/TemplateVersionWritable.md +22 -0
  182. data/docs/TemplateVersionsApi.md +384 -0
  183. data/docs/TemplateWritable.md +24 -0
  184. data/docs/TemplatesApi.md +376 -0
  185. data/docs/Thumbnail.md +22 -0
  186. data/docs/TrackingEventCertified.md +34 -0
  187. data/docs/TrackingEventDetails.md +24 -0
  188. data/docs/TrackingEventNormal.md +34 -0
  189. data/docs/Upload.md +44 -0
  190. data/docs/UploadCreateExport.md +20 -0
  191. data/docs/UploadFile.md +20 -0
  192. data/docs/UploadState.md +15 -0
  193. data/docs/UploadUpdatable.md +20 -0
  194. data/docs/UploadWritable.md +18 -0
  195. data/docs/UploadsApi.md +584 -0
  196. data/docs/UsAutocompletions.md +22 -0
  197. data/docs/UsAutocompletionsApi.md +78 -0
  198. data/docs/UsAutocompletionsWritable.md +26 -0
  199. data/docs/UsComponents.md +70 -0
  200. data/docs/UsVerification.md +38 -0
  201. data/docs/UsVerificationOrError.md +40 -0
  202. data/docs/UsVerifications.md +20 -0
  203. data/docs/UsVerificationsApi.md +157 -0
  204. data/docs/UsVerificationsWritable.md +32 -0
  205. data/docs/ValidationError.md +22 -0
  206. data/docs/Zip.md +26 -0
  207. data/docs/ZipCodeType.md +15 -0
  208. data/docs/ZipEditable.md +18 -0
  209. data/docs/ZipLookupCity.md +26 -0
  210. data/docs/ZipLookupsApi.md +78 -0
  211. data/git_push.sh +57 -0
  212. data/lib/lob.rb +1 -7
  213. data/lib/openapi_client/api/addresses_api.rb +318 -0
  214. data/lib/openapi_client/api/bank_accounts_api.rb +397 -0
  215. data/lib/openapi_client/api/billing_groups_api.rb +320 -0
  216. data/lib/openapi_client/api/buckslip_orders_api.rb +183 -0
  217. data/lib/openapi_client/api/buckslips_api.rb +385 -0
  218. data/lib/openapi_client/api/campaigns_api.rb +389 -0
  219. data/lib/openapi_client/api/card_orders_api.rb +183 -0
  220. data/lib/openapi_client/api/cards_api.rb +382 -0
  221. data/lib/openapi_client/api/checks_api.rb +337 -0
  222. data/lib/openapi_client/api/creatives_api.rb +244 -0
  223. data/lib/openapi_client/api/default_api.rb +79 -0
  224. data/lib/openapi_client/api/identity_validation_api.rb +90 -0
  225. data/lib/openapi_client/api/intl_autocompletions_api.rb +97 -0
  226. data/lib/openapi_client/api/intl_verifications_api.rb +165 -0
  227. data/lib/openapi_client/api/letters_api.rb +343 -0
  228. data/lib/openapi_client/api/postcards_api.rb +340 -0
  229. data/lib/openapi_client/api/reverse_geocode_lookups_api.rb +101 -0
  230. data/lib/openapi_client/api/self_mailers_api.rb +340 -0
  231. data/lib/openapi_client/api/template_versions_api.rb +440 -0
  232. data/lib/openapi_client/api/templates_api.rb +397 -0
  233. data/lib/openapi_client/api/uploads_api.rb +604 -0
  234. data/lib/openapi_client/api/us_autocompletions_api.rb +90 -0
  235. data/lib/openapi_client/api/us_verifications_api.rb +172 -0
  236. data/lib/openapi_client/api/zip_lookups_api.rb +90 -0
  237. data/lib/openapi_client/api_client.rb +392 -0
  238. data/lib/openapi_client/api_error.rb +57 -0
  239. data/lib/openapi_client/configuration.rb +279 -0
  240. data/lib/openapi_client/models/address.rb +616 -0
  241. data/lib/openapi_client/models/address_deletion.rb +303 -0
  242. data/lib/openapi_client/models/address_domestic.rb +522 -0
  243. data/lib/openapi_client/models/address_domestic_expanded.rb +521 -0
  244. data/lib/openapi_client/models/address_editable.rb +503 -0
  245. data/lib/openapi_client/models/address_list.rb +324 -0
  246. data/lib/openapi_client/models/bank_account.rb +576 -0
  247. data/lib/openapi_client/models/bank_account_deletion.rb +303 -0
  248. data/lib/openapi_client/models/bank_account_list.rb +324 -0
  249. data/lib/openapi_client/models/bank_account_verify.rb +264 -0
  250. data/lib/openapi_client/models/bank_account_writable.rb +387 -0
  251. data/lib/openapi_client/models/bank_type_enum.rb +37 -0
  252. data/lib/openapi_client/models/billing_group.rb +395 -0
  253. data/lib/openapi_client/models/billing_group_editable.rb +278 -0
  254. data/lib/openapi_client/models/billing_group_list.rb +314 -0
  255. data/lib/openapi_client/models/buckslip.rb +814 -0
  256. data/lib/openapi_client/models/buckslip_deletion.rb +257 -0
  257. data/lib/openapi_client/models/buckslip_editable.rb +316 -0
  258. data/lib/openapi_client/models/buckslip_order.rb +438 -0
  259. data/lib/openapi_client/models/buckslip_order_editable.rb +262 -0
  260. data/lib/openapi_client/models/buckslip_orders_list.rb +312 -0
  261. data/lib/openapi_client/models/buckslip_updatable.rb +289 -0
  262. data/lib/openapi_client/models/buckslips_list.rb +324 -0
  263. data/lib/openapi_client/models/bulk_error.rb +229 -0
  264. data/lib/openapi_client/models/bulk_error_properties.rb +274 -0
  265. data/lib/openapi_client/models/campaign.rb +549 -0
  266. data/lib/openapi_client/models/campaign_creative.rb +467 -0
  267. data/lib/openapi_client/models/campaign_deletion.rb +257 -0
  268. data/lib/openapi_client/models/campaign_updatable.rb +341 -0
  269. data/lib/openapi_client/models/campaign_writable.rb +373 -0
  270. data/lib/openapi_client/models/campaigns_list.rb +324 -0
  271. data/lib/openapi_client/models/card.rb +681 -0
  272. data/lib/openapi_client/models/card_deletion.rb +303 -0
  273. data/lib/openapi_client/models/card_editable.rb +318 -0
  274. data/lib/openapi_client/models/card_list.rb +324 -0
  275. data/lib/openapi_client/models/card_order.rb +438 -0
  276. data/lib/openapi_client/models/card_order_editable.rb +261 -0
  277. data/lib/openapi_client/models/card_order_list.rb +273 -0
  278. data/lib/openapi_client/models/card_updatable.rb +289 -0
  279. data/lib/openapi_client/models/check.rb +812 -0
  280. data/lib/openapi_client/models/check_deletion.rb +303 -0
  281. data/lib/openapi_client/models/check_editable.rb +537 -0
  282. data/lib/openapi_client/models/check_list.rb +324 -0
  283. data/lib/openapi_client/models/chk_use_type.rb +38 -0
  284. data/lib/openapi_client/models/cmp_schedule_type.rb +36 -0
  285. data/lib/openapi_client/models/cmp_use_type.rb +38 -0
  286. data/lib/openapi_client/models/country_extended.rb +254 -0
  287. data/lib/openapi_client/models/country_extended_expanded.rb +255 -0
  288. data/lib/openapi_client/models/creative_patch.rb +274 -0
  289. data/lib/openapi_client/models/creative_response.rb +444 -0
  290. data/lib/openapi_client/models/creative_writable.rb +400 -0
  291. data/lib/openapi_client/models/custom_envelope_returned.rb +319 -0
  292. data/lib/openapi_client/models/deliverability_analysis.rb +601 -0
  293. data/lib/openapi_client/models/dpv_footnote.rb +54 -0
  294. data/lib/openapi_client/models/engine_html.rb +37 -0
  295. data/lib/openapi_client/models/event_type.rb +325 -0
  296. data/lib/openapi_client/models/events.rb +365 -0
  297. data/lib/openapi_client/models/export.rb +422 -0
  298. data/lib/openapi_client/models/export_model.rb +262 -0
  299. data/lib/openapi_client/models/geocode_addresses.rb +237 -0
  300. data/lib/openapi_client/models/geocode_components.rb +291 -0
  301. data/lib/openapi_client/models/http_validation_error.rb +230 -0
  302. data/lib/openapi_client/models/identity_validation.rb +460 -0
  303. data/lib/openapi_client/models/inline_object.rb +229 -0
  304. data/lib/openapi_client/models/intl_autocompletions.rb +282 -0
  305. data/lib/openapi_client/models/intl_autocompletions_writable.rb +278 -0
  306. data/lib/openapi_client/models/intl_components.rb +314 -0
  307. data/lib/openapi_client/models/intl_suggestions.rb +372 -0
  308. data/lib/openapi_client/models/intl_verification.rb +463 -0
  309. data/lib/openapi_client/models/intl_verification_or_error.rb +466 -0
  310. data/lib/openapi_client/models/intl_verification_writable.rb +388 -0
  311. data/lib/openapi_client/models/intl_verifications.rb +250 -0
  312. data/lib/openapi_client/models/intl_verifications_payload.rb +263 -0
  313. data/lib/openapi_client/models/letter.rb +737 -0
  314. data/lib/openapi_client/models/letter_custom_envelope.rb +300 -0
  315. data/lib/openapi_client/models/letter_deletion.rb +303 -0
  316. data/lib/openapi_client/models/letter_details_returned.rb +393 -0
  317. data/lib/openapi_client/models/letter_details_writable.rb +390 -0
  318. data/lib/openapi_client/models/letter_editable.rb +532 -0
  319. data/lib/openapi_client/models/letter_list.rb +324 -0
  320. data/lib/openapi_client/models/lob_confidence_score.rb +299 -0
  321. data/lib/openapi_client/models/lob_error.rb +296 -0
  322. data/lib/openapi_client/models/location.rb +289 -0
  323. data/lib/openapi_client/models/location_analysis.rb +305 -0
  324. data/lib/openapi_client/models/ltr_use_type.rb +38 -0
  325. data/lib/openapi_client/models/mail_type.rb +37 -0
  326. data/lib/openapi_client/models/multi_line_address.rb +431 -0
  327. data/lib/openapi_client/models/multiple_components.rb +405 -0
  328. data/lib/openapi_client/models/multiple_components_intl.rb +377 -0
  329. data/lib/openapi_client/models/multiple_components_list.rb +263 -0
  330. data/lib/openapi_client/models/optional_address_column_mapping.rb +259 -0
  331. data/lib/openapi_client/models/placeholder_model.rb +273 -0
  332. data/lib/openapi_client/models/postcard.rb +656 -0
  333. data/lib/openapi_client/models/postcard_deletion.rb +303 -0
  334. data/lib/openapi_client/models/postcard_details_returned.rb +321 -0
  335. data/lib/openapi_client/models/postcard_details_writable.rb +242 -0
  336. data/lib/openapi_client/models/postcard_editable.rb +393 -0
  337. data/lib/openapi_client/models/postcard_list.rb +324 -0
  338. data/lib/openapi_client/models/postcard_size.rb +38 -0
  339. data/lib/openapi_client/models/psc_use_type.rb +38 -0
  340. data/lib/openapi_client/models/qr_code.rb +339 -0
  341. data/lib/openapi_client/models/required_address_column_mapping.rb +285 -0
  342. data/lib/openapi_client/models/return_envelope.rb +258 -0
  343. data/lib/openapi_client/models/reverse_geocode.rb +304 -0
  344. data/lib/openapi_client/models/self_mailer.rb +584 -0
  345. data/lib/openapi_client/models/self_mailer_deletion.rb +303 -0
  346. data/lib/openapi_client/models/self_mailer_editable.rb +384 -0
  347. data/lib/openapi_client/models/self_mailer_list.rb +324 -0
  348. data/lib/openapi_client/models/self_mailer_size.rb +38 -0
  349. data/lib/openapi_client/models/sfm_use_type.rb +38 -0
  350. data/lib/openapi_client/models/sort_by.rb +283 -0
  351. data/lib/openapi_client/models/sort_by1.rb +283 -0
  352. data/lib/openapi_client/models/sort_by2.rb +283 -0
  353. data/lib/openapi_client/models/sort_by3.rb +283 -0
  354. data/lib/openapi_client/models/sort_by_date_modified.rb +283 -0
  355. data/lib/openapi_client/models/suggestions.rb +343 -0
  356. data/lib/openapi_client/models/template.rb +406 -0
  357. data/lib/openapi_client/models/template_deletion.rb +303 -0
  358. data/lib/openapi_client/models/template_list.rb +324 -0
  359. data/lib/openapi_client/models/template_update.rb +272 -0
  360. data/lib/openapi_client/models/template_version.rb +423 -0
  361. data/lib/openapi_client/models/template_version_deletion.rb +303 -0
  362. data/lib/openapi_client/models/template_version_list.rb +324 -0
  363. data/lib/openapi_client/models/template_version_updatable.rb +257 -0
  364. data/lib/openapi_client/models/template_version_writable.rb +291 -0
  365. data/lib/openapi_client/models/template_writable.rb +309 -0
  366. data/lib/openapi_client/models/thumbnail.rb +300 -0
  367. data/lib/openapi_client/models/tracking_event_certified.rb +419 -0
  368. data/lib/openapi_client/models/tracking_event_details.rb +308 -0
  369. data/lib/openapi_client/models/tracking_event_normal.rb +409 -0
  370. data/lib/openapi_client/models/upload.rb +498 -0
  371. data/lib/openapi_client/models/upload_create_export.rb +283 -0
  372. data/lib/openapi_client/models/upload_file.rb +283 -0
  373. data/lib/openapi_client/models/upload_state.rb +42 -0
  374. data/lib/openapi_client/models/upload_updatable.rb +267 -0
  375. data/lib/openapi_client/models/upload_writable.rb +271 -0
  376. data/lib/openapi_client/models/uploads_metadata.rb +237 -0
  377. data/lib/openapi_client/models/us_autocompletions.rb +328 -0
  378. data/lib/openapi_client/models/us_autocompletions_writable.rb +274 -0
  379. data/lib/openapi_client/models/us_components.rb +788 -0
  380. data/lib/openapi_client/models/us_verification.rb +461 -0
  381. data/lib/openapi_client/models/us_verification_or_error.rb +459 -0
  382. data/lib/openapi_client/models/us_verifications.rb +250 -0
  383. data/lib/openapi_client/models/us_verifications_writable.rb +421 -0
  384. data/lib/openapi_client/models/validation_error.rb +263 -0
  385. data/lib/openapi_client/models/zip.rb +363 -0
  386. data/lib/openapi_client/models/zip_code_type.rb +40 -0
  387. data/lib/openapi_client/models/zip_editable.rb +246 -0
  388. data/lib/openapi_client/models/zip_lookup_city.rb +331 -0
  389. data/lib/openapi_client/version.rb +15 -0
  390. data/lib/openapi_client.rb +212 -0
  391. data/openapi_client.gemspec +37 -0
  392. data/spec/api/addresses_api_spec.rb +88 -0
  393. data/spec/api/bank_accounts_api_spec.rb +101 -0
  394. data/spec/api/billing_groups_api_spec.rb +89 -0
  395. data/spec/api/campaigns_api_spec.rb +100 -0
  396. data/spec/api/card_orders_api_spec.rb +62 -0
  397. data/spec/api/cards_api_spec.rb +99 -0
  398. data/spec/api/checks_api_spec.rb +93 -0
  399. data/spec/api/creatives_api_spec.rb +73 -0
  400. data/spec/api/default_api_spec.rb +46 -0
  401. data/spec/api/identity_validation_api_spec.rb +47 -0
  402. data/spec/api/intl_autocompletions_api_spec.rb +48 -0
  403. data/spec/api/intl_verifications_api_spec.rb +60 -0
  404. data/spec/api/letters_api_spec.rb +94 -0
  405. data/spec/api/postcards_api_spec.rb +94 -0
  406. data/spec/api/reverse_geocode_lookups_api_spec.rb +48 -0
  407. data/spec/api/self_mailers_api_spec.rb +94 -0
  408. data/spec/api/template_versions_api_spec.rb +105 -0
  409. data/spec/api/templates_api_spec.rb +101 -0
  410. data/spec/api/uploads_api_spec.rb +135 -0
  411. data/spec/api/us_autocompletions_api_spec.rb +47 -0
  412. data/spec/api/us_verifications_api_spec.rb +61 -0
  413. data/spec/api/zip_lookups_api_spec.rb +47 -0
  414. data/spec/api_client_spec.rb +226 -0
  415. data/spec/configuration_spec.rb +42 -0
  416. data/spec/spec_helper.rb +105 -13
  417. metadata +450 -214
  418. data/.github/workflows/forked_tests_job.yml +0 -36
  419. data/.github/workflows/run_tests_job.yml +0 -32
  420. data/.github/workflows/update_gem.yml +0 -27
  421. data/.gitignore +0 -19
  422. data/CHANGELOG.md +0 -148
  423. data/CONTRIBUTING.md +0 -19
  424. data/LICENSE.txt +0 -22
  425. data/examples/README.md +0 -119
  426. data/examples/cards.rb +0 -51
  427. data/examples/checks.rb +0 -49
  428. data/examples/csv_checks/create_checks.rb +0 -48
  429. data/examples/csv_checks/input.csv +0 -6
  430. data/examples/csv_letters/create_letters.rb +0 -41
  431. data/examples/csv_letters/input.csv +0 -6
  432. data/examples/csv_letters/letter_template.html +0 -33
  433. data/examples/csv_postcards/create_postcards.rb +0 -46
  434. data/examples/csv_postcards/input.csv +0 -7
  435. data/examples/csv_postcards/postcard_back.html +0 -38
  436. data/examples/csv_postcards/postcard_front.html +0 -25
  437. data/examples/csv_verify/input.csv +0 -7
  438. data/examples/csv_verify/verify.rb +0 -37
  439. data/examples/letters.rb +0 -73
  440. data/examples/list_postcards_metadata.rb +0 -94
  441. data/examples/postcards.rb +0 -87
  442. data/examples/postcards_idempotent.rb +0 -92
  443. data/examples/postcards_intl.rb +0 -87
  444. data/examples/postcards_remote.rb +0 -87
  445. data/examples/postcards_send_date.rb +0 -97
  446. data/examples/postcards_template.rb +0 -98
  447. data/examples/self_mailers.rb +0 -38
  448. data/lib/lob/client.rb +0 -96
  449. data/lib/lob/errors/invalid_request_error.rb +0 -4
  450. data/lib/lob/errors/lob_error.rb +0 -20
  451. data/lib/lob/resources/address.rb +0 -14
  452. data/lib/lob/resources/bank_account.rb +0 -30
  453. data/lib/lob/resources/bulk_intl_verifications.rb +0 -27
  454. data/lib/lob/resources/bulk_us_verifications.rb +0 -28
  455. data/lib/lob/resources/card.rb +0 -46
  456. data/lib/lob/resources/check.rb +0 -14
  457. data/lib/lob/resources/group.rb +0 -14
  458. data/lib/lob/resources/groups_member.rb +0 -66
  459. data/lib/lob/resources/intl_verifications.rb +0 -26
  460. data/lib/lob/resources/letter.rb +0 -14
  461. data/lib/lob/resources/postcard.rb +0 -14
  462. data/lib/lob/resources/resource_base.rb +0 -150
  463. data/lib/lob/resources/self_mailer.rb +0 -14
  464. data/lib/lob/resources/us_autocompletions.rb +0 -26
  465. data/lib/lob/resources/us_reverse_geocode_lookups.rb +0 -26
  466. data/lib/lob/resources/us_verifications.rb +0 -27
  467. data/lib/lob/resources/us_zip_lookups.rb +0 -26
  468. data/lib/lob/version.rb +0 -3
  469. data/lob.gemspec +0 -31
  470. data/spec/lob/errors/lob_error_spec.rb +0 -19
  471. data/spec/lob/resources/address_spec.rb +0 -55
  472. data/spec/lob/resources/bank_account_spec.rb +0 -60
  473. data/spec/lob/resources/bulk_intl_verifications_spec.rb +0 -39
  474. data/spec/lob/resources/bulk_us_verifications_spec.rb +0 -51
  475. data/spec/lob/resources/card_spec.rb +0 -145
  476. data/spec/lob/resources/check_spec.rb +0 -119
  477. data/spec/lob/resources/group_spec.rb +0 -50
  478. data/spec/lob/resources/intl_verifications_spec.rb +0 -25
  479. data/spec/lob/resources/letter_spec.rb +0 -114
  480. data/spec/lob/resources/member_spec.rb +0 -65
  481. data/spec/lob/resources/postcard_spec.rb +0 -160
  482. data/spec/lob/resources/resource_base_spec.rb +0 -75
  483. data/spec/lob/resources/self_mailer_spec.rb +0 -177
  484. data/spec/lob/resources/us_autocompletions_spec.rb +0 -24
  485. data/spec/lob/resources/us_reverse_geocode_lookups_spec.rb +0 -22
  486. data/spec/lob/resources/us_verifications_spec.rb +0 -31
  487. data/spec/lob/resources/us_zip_lookups_spec.rb +0 -23
  488. data/spec/lob_spec.rb +0 -48
  489. data/spec/samples/8.5x11.pdf +0 -0
  490. data/spec/samples/card.pdf +1 -743
  491. data/spec/samples/postcardback.pdf +2 -2287
  492. data/spec/samples/postcardfront.pdf +1 -1549
  493. data/spec/samples/sfm-12x9-inside.pdf +0 -0
  494. data/spec/samples/sfm-12x9-outside.pdf +0 -0
  495. data/spec/samples/sfm-6x18-inside.pdf +0 -0
  496. data/spec/samples/sfm-6x18-outside.pdf +0 -0
@@ -0,0 +1,419 @@
1
+ =begin
2
+ #Lob
3
+
4
+ #The Lob API is organized around REST. Our API is designed to have predictable, resource-oriented URLs and uses HTTP response codes to indicate any API errors. <p> Looking for our [previous documentation](https://lob.github.io/legacy-docs/)?
5
+
6
+ The version of the OpenAPI document: 1.3.0
7
+ Contact: lob-openapi@lob.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.2.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Lob
17
+ class TrackingEventCertified
18
+ # a Certified letter tracking event
19
+ attr_accessor :type
20
+
21
+ # Name of tracking event for Certified letters. Letters sent with USPS Certified Mail are fully tracked by USPS, therefore their tracking events have an additional details object with more detailed information about the tracking event. Some certified tracking event names have multiple meanings, noted in the list here. See the description of the details object for the full set of combined certified tracking event name meanings. * `Mailed` - Package has been accepted into the carrier network for delivery. * `In Transit` - Maps to four distinct stages of transit. * `In Local Area` - Package is at a location near the end destination. * `Processed for Delivery` - Maps to two distinct stages of delivery. * `Pickup Available` - Package is available for pickup at carrier location. * `Delivered` - Package has been delivered. * `Re-Routed` - Package has been forwarded. * `Returned to Sender` - Package is to be returned to sender. * `Issue` - Maps to (at least) 15 possible issues, some of which are actionable.
22
+ attr_accessor :name
23
+
24
+ attr_accessor :details
25
+
26
+ # The zip code in which the event occurred if it exists, otherwise will be the name of a Regional Distribution Center if it exists, otherwise will be null.
27
+ attr_accessor :location
28
+
29
+ # Unique identifier prefixed with `evnt_`.
30
+ attr_accessor :id
31
+
32
+ # A timestamp in ISO 8601 format of the date USPS registered the event.
33
+ attr_accessor :time
34
+
35
+ # A timestamp in ISO 8601 format of the date the resource was created.
36
+ attr_accessor :date_created
37
+
38
+ # A timestamp in ISO 8601 format of the date the resource was last modified.
39
+ attr_accessor :date_modified
40
+
41
+ attr_accessor :object
42
+
43
+ class EnumAttributeValidator
44
+ attr_reader :datatype
45
+ attr_reader :allowable_values
46
+
47
+ def initialize(datatype, allowable_values)
48
+ @allowable_values = allowable_values.map do |value|
49
+ case datatype.to_s
50
+ when /Integer/i
51
+ value.to_i
52
+ when /Float/i
53
+ value.to_f
54
+ else
55
+ value
56
+ end
57
+ end
58
+ end
59
+
60
+ def valid?(value)
61
+ !value || allowable_values.include?(value)
62
+ end
63
+ end
64
+
65
+ # Attribute mapping from ruby-style variable name to JSON key.
66
+ def self.attribute_map
67
+ {
68
+ :'type' => :'type',
69
+ :'name' => :'name',
70
+ :'details' => :'details',
71
+ :'location' => :'location',
72
+ :'id' => :'id',
73
+ :'time' => :'time',
74
+ :'date_created' => :'date_created',
75
+ :'date_modified' => :'date_modified',
76
+ :'object' => :'object'
77
+ }
78
+ end
79
+
80
+ # Returns all the JSON keys this model knows about
81
+ def self.acceptable_attributes
82
+ attribute_map.values
83
+ end
84
+
85
+ # Attribute type mapping.
86
+ def self.openapi_types
87
+ {
88
+ :'type' => :'String',
89
+ :'name' => :'String',
90
+ :'details' => :'TrackingEventDetails',
91
+ :'location' => :'String',
92
+ :'id' => :'String',
93
+ :'time' => :'Time',
94
+ :'date_created' => :'Time',
95
+ :'date_modified' => :'Time',
96
+ :'object' => :'String'
97
+ }
98
+ end
99
+
100
+ # List of attributes with nullable: true
101
+ def self.openapi_nullable
102
+ Set.new([
103
+ :'location',
104
+ ])
105
+ end
106
+
107
+ # Initializes the object
108
+ # @param [Hash] attributes Model attributes in the form of hash
109
+ def initialize(attributes = {})
110
+ if (!attributes.is_a?(Hash))
111
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Lob::TrackingEventCertified` initialize method"
112
+ end
113
+
114
+ # check to see if the attribute exists and convert string to symbol for hash key
115
+ attributes = attributes.each_with_object({}) { |(k, v), h|
116
+ if (!self.class.attribute_map.key?(k.to_sym))
117
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Lob::TrackingEventCertified`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
118
+ end
119
+ h[k.to_sym] = v
120
+ }
121
+
122
+ if attributes.key?(:'type')
123
+ self.type = attributes[:'type']
124
+ end
125
+
126
+ if attributes.key?(:'name')
127
+ self.name = attributes[:'name']
128
+ end
129
+
130
+ if attributes.key?(:'details')
131
+ self.details = attributes[:'details']
132
+ end
133
+
134
+ if attributes.key?(:'location')
135
+ self.location = attributes[:'location']
136
+ end
137
+
138
+ if attributes.key?(:'id')
139
+ self.id = attributes[:'id']
140
+ end
141
+
142
+ if attributes.key?(:'time')
143
+ self.time = attributes[:'time']
144
+ end
145
+
146
+ if attributes.key?(:'date_created')
147
+ self.date_created = attributes[:'date_created']
148
+ end
149
+
150
+ if attributes.key?(:'date_modified')
151
+ self.date_modified = attributes[:'date_modified']
152
+ end
153
+
154
+ if attributes.key?(:'object')
155
+ self.object = attributes[:'object']
156
+ else
157
+ self.object = 'tracking_event'
158
+ end
159
+ end
160
+
161
+ # Show invalid properties with the reasons. Usually used together with valid?
162
+ # @return Array for valid properties with the reasons
163
+ def list_invalid_properties
164
+ invalid_properties = Array.new
165
+ if @type.nil?
166
+ invalid_properties.push('invalid value for "type", type cannot be nil.')
167
+ end
168
+
169
+ if @name.nil?
170
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
171
+ end
172
+
173
+ if @id.nil?
174
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
175
+ end
176
+
177
+ pattern = Regexp.new(/^evnt_[a-zA-Z0-9]+$/)
178
+ if @id !~ pattern
179
+ invalid_properties.push("invalid value for \"id\", must conform to the pattern #{pattern}.")
180
+ end
181
+
182
+ if @date_created.nil?
183
+ invalid_properties.push('invalid value for "date_created", date_created cannot be nil.')
184
+ end
185
+
186
+ if @date_modified.nil?
187
+ invalid_properties.push('invalid value for "date_modified", date_modified cannot be nil.')
188
+ end
189
+
190
+ if @object.nil?
191
+ invalid_properties.push('invalid value for "object", object cannot be nil.')
192
+ end
193
+
194
+ invalid_properties
195
+ end
196
+
197
+ # Check to see if the all the properties in the model are valid
198
+ # @return true if the model is valid
199
+ def valid?
200
+ return false if @type.nil?
201
+ type_validator = EnumAttributeValidator.new('String', ["certified"])
202
+ return false unless type_validator.valid?(@type)
203
+ return false if @name.nil?
204
+ name_validator = EnumAttributeValidator.new('String', ["Mailed", "In Transit", "In Local Area", "Processed for Delivery", "Pickup Available", "Delivered", "Re-Routed", "Returned to Sender", "Issue"])
205
+ return false unless name_validator.valid?(@name)
206
+ return false if @id.nil?
207
+ return false if @id !~ Regexp.new(/^evnt_[a-zA-Z0-9]+$/)
208
+ return false if @date_created.nil?
209
+ return false if @date_modified.nil?
210
+ return false if @object.nil?
211
+ object_validator = EnumAttributeValidator.new('String', ["tracking_event"])
212
+ return false unless object_validator.valid?(@object)
213
+ true
214
+ end
215
+
216
+ # Custom attribute writer method checking allowed values (enum).
217
+ # @param [Object] type Object to be assigned
218
+ def type=(type)
219
+ validator = EnumAttributeValidator.new('String', ["certified"])
220
+ unless validator.valid?(type)
221
+ fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
222
+ end
223
+ @type = type
224
+ end
225
+
226
+ # Custom attribute writer method checking allowed values (enum).
227
+ # @param [Object] name Object to be assigned
228
+ def name=(name)
229
+ validator = EnumAttributeValidator.new('String', ["Mailed", "In Transit", "In Local Area", "Processed for Delivery", "Pickup Available", "Delivered", "Re-Routed", "Returned to Sender", "Issue"])
230
+ unless validator.valid?(name)
231
+ fail ArgumentError, "invalid value for \"name\", must be one of #{validator.allowable_values}."
232
+ end
233
+ @name = name
234
+ end
235
+
236
+ # Custom attribute writer method with validation
237
+ # @param [Object] id Value to be assigned
238
+ def id=(id)
239
+ if id.nil?
240
+ fail ArgumentError, 'id cannot be nil'
241
+ end
242
+
243
+ pattern = Regexp.new(/^evnt_[a-zA-Z0-9]+$/)
244
+ if id !~ pattern
245
+ fail ArgumentError, "invalid value for \"id\", must conform to the pattern #{pattern}."
246
+ end
247
+
248
+ @id = id
249
+ end
250
+
251
+ # Custom attribute writer method checking allowed values (enum).
252
+ # @param [Object] object Object to be assigned
253
+ def object=(object)
254
+ validator = EnumAttributeValidator.new('String', ["tracking_event"])
255
+ unless validator.valid?(object)
256
+ fail ArgumentError, "invalid value for \"object\", must be one of #{validator.allowable_values}."
257
+ end
258
+ @object = object
259
+ end
260
+
261
+ # Checks equality by comparing each attribute.
262
+ # @param [Object] Object to be compared
263
+ def ==(o)
264
+ return true if self.equal?(o)
265
+ self.class == o.class &&
266
+ type == o.type &&
267
+ name == o.name &&
268
+ details == o.details &&
269
+ location == o.location &&
270
+ id == o.id &&
271
+ time == o.time &&
272
+ date_created == o.date_created &&
273
+ date_modified == o.date_modified &&
274
+ object == o.object
275
+ end
276
+
277
+ # @see the `==` method
278
+ # @param [Object] Object to be compared
279
+ def eql?(o)
280
+ self == o
281
+ end
282
+
283
+ # Calculates hash code according to all attributes.
284
+ # @return [Integer] Hash code
285
+ def hash
286
+ [type, name, details, location, id, time, date_created, date_modified, object].hash
287
+ end
288
+
289
+
290
+ # Builds the object from hash
291
+ # @param [Hash] attributes Model attributes in the form of hash
292
+ # @return [Object] Returns the model itself
293
+ def self.build_from_hash(attributes)
294
+ new.build_from_hash(attributes)
295
+ end
296
+
297
+ # Builds the object from hash
298
+ # @param [Hash] attributes Model attributes in the form of hash
299
+ # @return [Object] Returns the model itself
300
+ def build_from_hash(attributes)
301
+ return nil unless attributes.is_a?(Hash)
302
+ attributes = attributes.transform_keys(&:to_sym)
303
+ self.class.openapi_types.each_pair do |key, type|
304
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
305
+ self.send("#{key}=", nil) # // guardrails-disable-line
306
+ elsif type =~ /\AArray<(.*)>/i
307
+ # check to ensure the input is an array given that the attribute
308
+ # is documented as an array but the input is not
309
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
310
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) # // guardrails-disable-line
311
+ end
312
+ elsif !attributes[self.class.attribute_map[key]].nil? && type.kind_of?(Array)
313
+ for base_type in type do
314
+ res = _deserialize(base_type, attributes[self.class.attribute_map[key]])
315
+ if !res.nil?
316
+ self.send("#{key}=", res) # // guardrails-disable-line
317
+ break
318
+ end
319
+ end
320
+ elsif !attributes[self.class.attribute_map[key]].nil?
321
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) # // guardrails-disable-line
322
+ end
323
+ end
324
+
325
+ self
326
+ end
327
+
328
+ # Deserializes the data based on type
329
+ # @param string type Data type
330
+ # @param string value Value to be deserialized
331
+ # @return [Object] Deserialized data
332
+ def _deserialize(type, value)
333
+ case type.to_sym
334
+ when :Time
335
+ Time.parse(value)
336
+ when :Date
337
+ Date.parse(value)
338
+ when :String
339
+ value.to_s
340
+ when :Integer
341
+ value.to_i
342
+ when :Float
343
+ value.to_f
344
+ when :Boolean
345
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
346
+ true
347
+ else
348
+ false
349
+ end
350
+ when :Object
351
+ # generic object (usually a Hash), return directly
352
+ value
353
+ when /\AArray<(?<inner_type>.+)>\z/
354
+ inner_type = Regexp.last_match[:inner_type]
355
+ value.map { |v| _deserialize(inner_type, v) }
356
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
357
+ k_type = Regexp.last_match[:k_type]
358
+ v_type = Regexp.last_match[:v_type]
359
+ {}.tap do |hash|
360
+ value.each do |k, v|
361
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
362
+ end
363
+ end
364
+ else # model
365
+ # models (e.g. Pet) or oneOf
366
+ klass = Lob.const_get(type)
367
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
368
+ end
369
+ end
370
+
371
+ # Returns the string representation of the object
372
+ # @return [String] String presentation of the object
373
+ def to_s
374
+ to_hash.to_s
375
+ end
376
+
377
+ # to_body is an alias to to_hash (backward compatibility)
378
+ # @return [Hash] Returns the object in the form of hash
379
+ def to_body
380
+ to_hash
381
+ end
382
+
383
+ # Returns the object in the form of hash
384
+ # @return [Hash] Returns the object in the form of hash
385
+ def to_hash
386
+ hash = {}
387
+ self.class.attribute_map.each_pair do |attr, param|
388
+ value = self.send(attr) # // guardrails-disable-line
389
+ if value.nil?
390
+ is_nullable = self.class.openapi_nullable.include?(attr)
391
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
392
+ end
393
+
394
+ hash[param] = _to_hash(value)
395
+ end
396
+ hash
397
+ end
398
+
399
+ # Outputs non-array value in the form of hash
400
+ # For object, use to_hash. Otherwise, just return the value
401
+ # @param [Object] value Any valid value
402
+ # @return [Hash] Returns the value in the form of hash
403
+ def _to_hash(value)
404
+ if value.is_a?(Array)
405
+ value.compact.map { |v| _to_hash(v) }
406
+ elsif value.is_a?(Hash)
407
+ {}.tap do |hash|
408
+ value.each { |k, v| hash[k] = _to_hash(v) }
409
+ end
410
+ elsif value.respond_to? :to_hash
411
+ value.to_hash
412
+ else
413
+ value
414
+ end
415
+ end
416
+
417
+ end
418
+
419
+ end