diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml old mode 100644 new mode 100755 diff --git a/.github/workflows/update_gem.yml b/.github/workflows/update_gem.yml old mode 100644 new mode 100755 diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES old mode 100644 new mode 100755 index e72d8f9..2303dff --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -1,8 +1,8 @@ .gitignore -.openapi-generator-ignore .rspec .rubocop.yml .travis.yml +CODE_SNIPPETS.md Gemfile README.md Rakefile @@ -24,10 +24,21 @@ docs/BillingGroup.md docs/BillingGroupEditable.md docs/BillingGroupList.md docs/BillingGroupsApi.md +docs/Buckslip.md +docs/BuckslipDeletion.md +docs/BuckslipEditable.md +docs/BuckslipOrder.md +docs/BuckslipOrderEditable.md +docs/BuckslipOrdersApi.md +docs/BuckslipOrdersList.md +docs/BuckslipUpdatable.md +docs/BuckslipsApi.md +docs/BuckslipsList.md docs/BulkError.md docs/BulkErrorProperties.md docs/Campaign.md docs/CampaignCreative.md +docs/CampaignDeletion.md docs/CampaignUpdatable.md docs/CampaignWritable.md docs/CampaignsApi.md @@ -47,6 +58,7 @@ docs/CheckDeletion.md docs/CheckEditable.md docs/CheckList.md docs/ChecksApi.md +docs/ChkUseType.md docs/CmpScheduleType.md docs/CmpUseType.md docs/CountryExtended.md @@ -70,7 +82,6 @@ docs/HTTPValidationError.md docs/IdentityValidation.md docs/IdentityValidationApi.md docs/InlineObject.md -docs/InlineResponse200.md docs/IntlAutocompletions.md docs/IntlAutocompletionsApi.md docs/IntlAutocompletionsWritable.md @@ -94,11 +105,13 @@ docs/LobConfidenceScore.md docs/LobError.md docs/Location.md docs/LocationAnalysis.md +docs/LtrUseType.md docs/MailType.md docs/MultiLineAddress.md docs/MultipleComponents.md docs/MultipleComponentsIntl.md docs/MultipleComponentsList.md +docs/OptionalAddressColumnMapping.md docs/PlaceholderModel.md docs/Postcard.md docs/PostcardDeletion.md @@ -108,6 +121,9 @@ docs/PostcardEditable.md docs/PostcardList.md docs/PostcardSize.md docs/PostcardsApi.md +docs/PscUseType.md +docs/QrCode.md +docs/RequiredAddressColumnMapping.md docs/ReturnEnvelope.md docs/ReverseGeocode.md docs/ReverseGeocodeLookupsApi.md @@ -117,10 +133,19 @@ docs/SelfMailerEditable.md docs/SelfMailerList.md docs/SelfMailerSize.md docs/SelfMailersApi.md +docs/SfmUseType.md +docs/SnapPack.md +docs/SnapPackDeletion.md +docs/SnapPackEditable.md +docs/SnapPackList.md +docs/SnapPackSize.md +docs/SnapPacksApi.md +docs/SnpUseType.md docs/SortBy.md docs/SortBy1.md docs/SortBy2.md docs/SortBy3.md +docs/SortBy4.md docs/SortByDateModified.md docs/Suggestions.md docs/Template.md @@ -146,6 +171,7 @@ docs/UploadState.md docs/UploadUpdatable.md docs/UploadWritable.md docs/UploadsApi.md +docs/UploadsMetadata.md docs/UsAutocompletions.md docs/UsAutocompletionsApi.md docs/UsAutocompletionsWritable.md @@ -162,189 +188,196 @@ docs/ZipEditable.md docs/ZipLookupCity.md docs/ZipLookupsApi.md git_push.sh -lib/openapi_client.rb -lib/openapi_client/api/addresses_api.rb -lib/openapi_client/api/bank_accounts_api.rb -lib/openapi_client/api/billing_groups_api.rb -lib/openapi_client/api/campaigns_api.rb -lib/openapi_client/api/card_orders_api.rb -lib/openapi_client/api/cards_api.rb -lib/openapi_client/api/checks_api.rb -lib/openapi_client/api/creatives_api.rb -lib/openapi_client/api/default_api.rb -lib/openapi_client/api/identity_validation_api.rb -lib/openapi_client/api/intl_autocompletions_api.rb -lib/openapi_client/api/intl_verifications_api.rb -lib/openapi_client/api/letters_api.rb -lib/openapi_client/api/postcards_api.rb -lib/openapi_client/api/reverse_geocode_lookups_api.rb -lib/openapi_client/api/self_mailers_api.rb -lib/openapi_client/api/template_versions_api.rb -lib/openapi_client/api/templates_api.rb -lib/openapi_client/api/uploads_api.rb -lib/openapi_client/api/us_autocompletions_api.rb -lib/openapi_client/api/us_verifications_api.rb -lib/openapi_client/api/zip_lookups_api.rb -lib/openapi_client/api_client.rb -lib/openapi_client/api_error.rb -lib/openapi_client/configuration.rb -lib/openapi_client/models/address.rb -lib/openapi_client/models/address_deletion.rb -lib/openapi_client/models/address_domestic.rb -lib/openapi_client/models/address_domestic_expanded.rb -lib/openapi_client/models/address_editable.rb -lib/openapi_client/models/address_list.rb -lib/openapi_client/models/bank_account.rb -lib/openapi_client/models/bank_account_deletion.rb -lib/openapi_client/models/bank_account_list.rb -lib/openapi_client/models/bank_account_verify.rb -lib/openapi_client/models/bank_account_writable.rb -lib/openapi_client/models/bank_type_enum.rb -lib/openapi_client/models/billing_group.rb -lib/openapi_client/models/billing_group_editable.rb -lib/openapi_client/models/billing_group_list.rb -lib/openapi_client/models/bulk_error.rb -lib/openapi_client/models/bulk_error_properties.rb -lib/openapi_client/models/campaign.rb -lib/openapi_client/models/campaign_creative.rb -lib/openapi_client/models/campaign_updatable.rb -lib/openapi_client/models/campaign_writable.rb -lib/openapi_client/models/campaigns_list.rb -lib/openapi_client/models/card.rb -lib/openapi_client/models/card_deletion.rb -lib/openapi_client/models/card_editable.rb -lib/openapi_client/models/card_list.rb -lib/openapi_client/models/card_order.rb -lib/openapi_client/models/card_order_editable.rb -lib/openapi_client/models/card_order_list.rb -lib/openapi_client/models/card_updatable.rb -lib/openapi_client/models/check.rb -lib/openapi_client/models/check_deletion.rb -lib/openapi_client/models/check_editable.rb -lib/openapi_client/models/check_list.rb -lib/openapi_client/models/cmp_schedule_type.rb -lib/openapi_client/models/cmp_use_type.rb -lib/openapi_client/models/country_extended.rb -lib/openapi_client/models/country_extended_expanded.rb -lib/openapi_client/models/creative_patch.rb -lib/openapi_client/models/creative_response.rb -lib/openapi_client/models/creative_writable.rb -lib/openapi_client/models/custom_envelope_returned.rb -lib/openapi_client/models/deliverability_analysis.rb -lib/openapi_client/models/dpv_footnote.rb -lib/openapi_client/models/engine_html.rb -lib/openapi_client/models/event_type.rb -lib/openapi_client/models/events.rb -lib/openapi_client/models/export.rb -lib/openapi_client/models/export_model.rb -lib/openapi_client/models/geocode_addresses.rb -lib/openapi_client/models/geocode_components.rb -lib/openapi_client/models/http_validation_error.rb -lib/openapi_client/models/identity_validation.rb -lib/openapi_client/models/inline_object.rb -lib/openapi_client/models/inline_response200.rb -lib/openapi_client/models/intl_autocompletions.rb -lib/openapi_client/models/intl_autocompletions_writable.rb -lib/openapi_client/models/intl_components.rb -lib/openapi_client/models/intl_suggestions.rb -lib/openapi_client/models/intl_verification.rb -lib/openapi_client/models/intl_verification_or_error.rb -lib/openapi_client/models/intl_verification_writable.rb -lib/openapi_client/models/intl_verifications.rb -lib/openapi_client/models/intl_verifications_payload.rb -lib/openapi_client/models/letter.rb -lib/openapi_client/models/letter_custom_envelope.rb -lib/openapi_client/models/letter_deletion.rb -lib/openapi_client/models/letter_details_returned.rb -lib/openapi_client/models/letter_details_writable.rb -lib/openapi_client/models/letter_editable.rb -lib/openapi_client/models/letter_list.rb -lib/openapi_client/models/lob_confidence_score.rb -lib/openapi_client/models/lob_error.rb -lib/openapi_client/models/location.rb -lib/openapi_client/models/location_analysis.rb -lib/openapi_client/models/mail_type.rb -lib/openapi_client/models/multi_line_address.rb -lib/openapi_client/models/multiple_components.rb -lib/openapi_client/models/multiple_components_intl.rb -lib/openapi_client/models/multiple_components_list.rb -lib/openapi_client/models/placeholder_model.rb -lib/openapi_client/models/postcard.rb -lib/openapi_client/models/postcard_deletion.rb -lib/openapi_client/models/postcard_details_returned.rb -lib/openapi_client/models/postcard_details_writable.rb -lib/openapi_client/models/postcard_editable.rb -lib/openapi_client/models/postcard_list.rb -lib/openapi_client/models/postcard_size.rb -lib/openapi_client/models/return_envelope.rb -lib/openapi_client/models/reverse_geocode.rb -lib/openapi_client/models/self_mailer.rb -lib/openapi_client/models/self_mailer_deletion.rb -lib/openapi_client/models/self_mailer_editable.rb -lib/openapi_client/models/self_mailer_list.rb -lib/openapi_client/models/self_mailer_size.rb -lib/openapi_client/models/sort_by.rb -lib/openapi_client/models/sort_by1.rb -lib/openapi_client/models/sort_by2.rb -lib/openapi_client/models/sort_by3.rb -lib/openapi_client/models/sort_by_date_modified.rb -lib/openapi_client/models/suggestions.rb -lib/openapi_client/models/template.rb -lib/openapi_client/models/template_deletion.rb -lib/openapi_client/models/template_list.rb -lib/openapi_client/models/template_update.rb -lib/openapi_client/models/template_version.rb -lib/openapi_client/models/template_version_deletion.rb -lib/openapi_client/models/template_version_list.rb -lib/openapi_client/models/template_version_updatable.rb -lib/openapi_client/models/template_version_writable.rb -lib/openapi_client/models/template_writable.rb -lib/openapi_client/models/thumbnail.rb -lib/openapi_client/models/tracking_event_certified.rb -lib/openapi_client/models/tracking_event_details.rb -lib/openapi_client/models/tracking_event_normal.rb -lib/openapi_client/models/upload.rb -lib/openapi_client/models/upload_create_export.rb -lib/openapi_client/models/upload_file.rb -lib/openapi_client/models/upload_state.rb -lib/openapi_client/models/upload_updatable.rb -lib/openapi_client/models/upload_writable.rb -lib/openapi_client/models/us_autocompletions.rb -lib/openapi_client/models/us_autocompletions_writable.rb -lib/openapi_client/models/us_components.rb -lib/openapi_client/models/us_verification.rb -lib/openapi_client/models/us_verification_or_error.rb -lib/openapi_client/models/us_verifications.rb -lib/openapi_client/models/us_verifications_writable.rb -lib/openapi_client/models/validation_error.rb -lib/openapi_client/models/zip.rb -lib/openapi_client/models/zip_code_type.rb -lib/openapi_client/models/zip_editable.rb -lib/openapi_client/models/zip_lookup_city.rb -lib/openapi_client/version.rb -openapi_client.gemspec -spec/api/addresses_api_spec.rb -spec/api/bank_accounts_api_spec.rb -spec/api/billing_groups_api_spec.rb -spec/api/campaigns_api_spec.rb -spec/api/card_orders_api_spec.rb -spec/api/cards_api_spec.rb -spec/api/checks_api_spec.rb -spec/api/creatives_api_spec.rb -spec/api/default_api_spec.rb -spec/api/identity_validation_api_spec.rb -spec/api/intl_autocompletions_api_spec.rb -spec/api/intl_verifications_api_spec.rb -spec/api/letters_api_spec.rb -spec/api/postcards_api_spec.rb -spec/api/reverse_geocode_lookups_api_spec.rb -spec/api/self_mailers_api_spec.rb -spec/api/template_versions_api_spec.rb -spec/api/templates_api_spec.rb -spec/api/uploads_api_spec.rb -spec/api/us_autocompletions_api_spec.rb -spec/api/us_verifications_api_spec.rb -spec/api/zip_lookups_api_spec.rb +lib/lob.rb +lib/lob/api/addresses_api.rb +lib/lob/api/bank_accounts_api.rb +lib/lob/api/billing_groups_api.rb +lib/lob/api/buckslip_orders_api.rb +lib/lob/api/buckslips_api.rb +lib/lob/api/campaigns_api.rb +lib/lob/api/card_orders_api.rb +lib/lob/api/cards_api.rb +lib/lob/api/checks_api.rb +lib/lob/api/creatives_api.rb +lib/lob/api/default_api.rb +lib/lob/api/identity_validation_api.rb +lib/lob/api/intl_autocompletions_api.rb +lib/lob/api/intl_verifications_api.rb +lib/lob/api/letters_api.rb +lib/lob/api/postcards_api.rb +lib/lob/api/reverse_geocode_lookups_api.rb +lib/lob/api/self_mailers_api.rb +lib/lob/api/snap_packs_api.rb +lib/lob/api/template_versions_api.rb +lib/lob/api/templates_api.rb +lib/lob/api/uploads_api.rb +lib/lob/api/us_autocompletions_api.rb +lib/lob/api/us_verifications_api.rb +lib/lob/api/zip_lookups_api.rb +lib/lob/api_client.rb +lib/lob/api_error.rb +lib/lob/configuration.rb +lib/lob/models/address.rb +lib/lob/models/address_deletion.rb +lib/lob/models/address_domestic.rb +lib/lob/models/address_domestic_expanded.rb +lib/lob/models/address_editable.rb +lib/lob/models/address_list.rb +lib/lob/models/bank_account.rb +lib/lob/models/bank_account_deletion.rb +lib/lob/models/bank_account_list.rb +lib/lob/models/bank_account_verify.rb +lib/lob/models/bank_account_writable.rb +lib/lob/models/bank_type_enum.rb +lib/lob/models/billing_group.rb +lib/lob/models/billing_group_editable.rb +lib/lob/models/billing_group_list.rb +lib/lob/models/buckslip.rb +lib/lob/models/buckslip_deletion.rb +lib/lob/models/buckslip_editable.rb +lib/lob/models/buckslip_order.rb +lib/lob/models/buckslip_order_editable.rb +lib/lob/models/buckslip_orders_list.rb +lib/lob/models/buckslip_updatable.rb +lib/lob/models/buckslips_list.rb +lib/lob/models/bulk_error.rb +lib/lob/models/bulk_error_properties.rb +lib/lob/models/campaign.rb +lib/lob/models/campaign_creative.rb +lib/lob/models/campaign_deletion.rb +lib/lob/models/campaign_updatable.rb +lib/lob/models/campaign_writable.rb +lib/lob/models/campaigns_list.rb +lib/lob/models/card.rb +lib/lob/models/card_deletion.rb +lib/lob/models/card_editable.rb +lib/lob/models/card_list.rb +lib/lob/models/card_order.rb +lib/lob/models/card_order_editable.rb +lib/lob/models/card_order_list.rb +lib/lob/models/card_updatable.rb +lib/lob/models/check.rb +lib/lob/models/check_deletion.rb +lib/lob/models/check_editable.rb +lib/lob/models/check_list.rb +lib/lob/models/chk_use_type.rb +lib/lob/models/cmp_schedule_type.rb +lib/lob/models/cmp_use_type.rb +lib/lob/models/country_extended.rb +lib/lob/models/country_extended_expanded.rb +lib/lob/models/creative_patch.rb +lib/lob/models/creative_response.rb +lib/lob/models/creative_writable.rb +lib/lob/models/custom_envelope_returned.rb +lib/lob/models/deliverability_analysis.rb +lib/lob/models/dpv_footnote.rb +lib/lob/models/engine_html.rb +lib/lob/models/event_type.rb +lib/lob/models/events.rb +lib/lob/models/export.rb +lib/lob/models/export_model.rb +lib/lob/models/geocode_addresses.rb +lib/lob/models/geocode_components.rb +lib/lob/models/http_validation_error.rb +lib/lob/models/identity_validation.rb +lib/lob/models/inline_object.rb +lib/lob/models/intl_autocompletions.rb +lib/lob/models/intl_autocompletions_writable.rb +lib/lob/models/intl_components.rb +lib/lob/models/intl_suggestions.rb +lib/lob/models/intl_verification.rb +lib/lob/models/intl_verification_or_error.rb +lib/lob/models/intl_verification_writable.rb +lib/lob/models/intl_verifications.rb +lib/lob/models/intl_verifications_payload.rb +lib/lob/models/letter.rb +lib/lob/models/letter_custom_envelope.rb +lib/lob/models/letter_deletion.rb +lib/lob/models/letter_details_returned.rb +lib/lob/models/letter_details_writable.rb +lib/lob/models/letter_editable.rb +lib/lob/models/letter_list.rb +lib/lob/models/lob_confidence_score.rb +lib/lob/models/lob_error.rb +lib/lob/models/location.rb +lib/lob/models/location_analysis.rb +lib/lob/models/ltr_use_type.rb +lib/lob/models/mail_type.rb +lib/lob/models/multi_line_address.rb +lib/lob/models/multiple_components.rb +lib/lob/models/multiple_components_intl.rb +lib/lob/models/multiple_components_list.rb +lib/lob/models/optional_address_column_mapping.rb +lib/lob/models/placeholder_model.rb +lib/lob/models/postcard.rb +lib/lob/models/postcard_deletion.rb +lib/lob/models/postcard_details_returned.rb +lib/lob/models/postcard_details_writable.rb +lib/lob/models/postcard_editable.rb +lib/lob/models/postcard_list.rb +lib/lob/models/postcard_size.rb +lib/lob/models/psc_use_type.rb +lib/lob/models/qr_code.rb +lib/lob/models/required_address_column_mapping.rb +lib/lob/models/return_envelope.rb +lib/lob/models/reverse_geocode.rb +lib/lob/models/self_mailer.rb +lib/lob/models/self_mailer_deletion.rb +lib/lob/models/self_mailer_editable.rb +lib/lob/models/self_mailer_list.rb +lib/lob/models/self_mailer_size.rb +lib/lob/models/sfm_use_type.rb +lib/lob/models/snap_pack.rb +lib/lob/models/snap_pack_deletion.rb +lib/lob/models/snap_pack_editable.rb +lib/lob/models/snap_pack_list.rb +lib/lob/models/snap_pack_size.rb +lib/lob/models/snp_use_type.rb +lib/lob/models/sort_by.rb +lib/lob/models/sort_by1.rb +lib/lob/models/sort_by2.rb +lib/lob/models/sort_by3.rb +lib/lob/models/sort_by4.rb +lib/lob/models/sort_by_date_modified.rb +lib/lob/models/suggestions.rb +lib/lob/models/template.rb +lib/lob/models/template_deletion.rb +lib/lob/models/template_list.rb +lib/lob/models/template_update.rb +lib/lob/models/template_version.rb +lib/lob/models/template_version_deletion.rb +lib/lob/models/template_version_list.rb +lib/lob/models/template_version_updatable.rb +lib/lob/models/template_version_writable.rb +lib/lob/models/template_writable.rb +lib/lob/models/thumbnail.rb +lib/lob/models/tracking_event_certified.rb +lib/lob/models/tracking_event_details.rb +lib/lob/models/tracking_event_normal.rb +lib/lob/models/upload.rb +lib/lob/models/upload_create_export.rb +lib/lob/models/upload_file.rb +lib/lob/models/upload_state.rb +lib/lob/models/upload_updatable.rb +lib/lob/models/upload_writable.rb +lib/lob/models/uploads_metadata.rb +lib/lob/models/us_autocompletions.rb +lib/lob/models/us_autocompletions_writable.rb +lib/lob/models/us_components.rb +lib/lob/models/us_verification.rb +lib/lob/models/us_verification_or_error.rb +lib/lob/models/us_verifications.rb +lib/lob/models/us_verifications_writable.rb +lib/lob/models/validation_error.rb +lib/lob/models/zip.rb +lib/lob/models/zip_code_type.rb +lib/lob/models/zip_editable.rb +lib/lob/models/zip_lookup_city.rb +lib/lob/version.rb +lob.gemspec +spec/api/buckslip_orders_api_spec.rb +spec/api/buckslips_api_spec.rb +spec/api/snap_packs_api_spec.rb spec/api_client_spec.rb spec/configuration_spec.rb spec/spec_helper.rb diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION old mode 100644 new mode 100755 diff --git a/.rspec b/.rspec old mode 100644 new mode 100755 diff --git a/.rubocop.yml b/.rubocop.yml old mode 100644 new mode 100755 diff --git a/CODE_SNIPPETS.md b/CODE_SNIPPETS.md index 0b8a931..179c0a5 100755 --- a/CODE_SNIPPETS.md +++ b/CODE_SNIPPETS.md @@ -51,7 +51,7 @@ curl https://api.lob.com/v1/addresses \ -d "email=harry@lob.com" \ -d "phone=5555555555" \ -d "address_line1=2261 Market Street" \ - -d "address_line2=Ste 5668" \ + -d "address_line2=STE 5668" \ -d "address_city=San Francisco" \ -d "address_state=CA" \ -d "address_zip=94114" \ @@ -66,7 +66,7 @@ addressCreate = AddressEditable.new({ email: "harry@lob.com", phone: "5555555555", address_line1: "2261 Market Street", - address_line2: "Ste 5668", + address_line2: "STE 5668", address_city: "San Francisco", address_state: "CA", address_zip: "94114", @@ -196,7 +196,7 @@ curl https://api.lob.com/v1/postcards \ --data-urlencode "back=Back HTML for {{name}}" \ -d "to[name]=Harry Zhang" \ -d "to[address_line1]=2261 Market Street" \ - -d "to[address_line2]=Ste 5668" \ + -d "to[address_line2]=STE 5668" \ -d "to[address_city]=San Francisco" \ -d "to[address_state]=CA" \ -d "to[address_zip]=94114" \ @@ -212,7 +212,7 @@ postcardCreate = PostcardEditable.new({ to: AddressEditable.new({ name: "Harry Zhang", address_line1: "2261 Market Street", - address_line2: "Ste 5668", + address_line2: "STE 5668", address_city: "San Francisco", address_state: "CA", address_zip: "94114", @@ -305,7 +305,7 @@ curl https://api.lob.com/v1/self_mailers \ --data-urlencode "outside=Outside HTML for {{name}}" \ -d "to[name]=Harry Zhang" \ -d "to[address_line1]=2261 Market Street" \ - -d "to[address_line2]=Ste 5668" \ + -d "to[address_line2]=STE 5668" \ -d "to[address_city]=San Francisco" \ -d "to[address_state]=CA" \ -d "to[address_zip]=94114" \ @@ -321,7 +321,7 @@ selfMailerCreate = SelfMailerEditable.new({ to: AddressEditable.new({ name: "Harry Zhang", address_line1: "2261 Market Street", - address_line2: "Ste 5668", + address_line2: "STE 5668", address_city: "San Francisco", address_state: "CA", address_zip: "94114", @@ -414,7 +414,7 @@ curl https://api.lob.com/v1/letters \ -d "color=true" \ -d "to[name]=Harry Zhang" \ -d "to[address_line1]=2261 Market Street" \ - -d "to[address_line2]=Ste 5668" \ + -d "to[address_line2]=STE 5668" \ -d "to[address_city]=San Francisco" \ -d "to[address_state]=CA" \ -d "to[address_zip]=94114" \ @@ -431,7 +431,7 @@ letterCreate = LetterEditable.new({ to: AddressEditable.new({ name: "Harry Zhang", address_line1: "2261 Market Street", - address_line2: "Ste 5668", + address_line2: "STE 5668", address_city: "San Francisco", address_state: "CA", address_zip: "94114", @@ -530,7 +530,7 @@ curl https://api.lob.com/v1/checks \ -d "from=adr_210a8d4b0b76d77b" \ -d "to[name]=Harry Zhang" \ -d "to[address_line1]=2261 Market Street" \ - -d "to[address_line2]=Ste 5668" \ + -d "to[address_line2]=STE 5668" \ -d "to[address_city]=San Francisco" \ -d "to[address_state]=CA" \ -d "to[address_zip]=94114" \ @@ -549,7 +549,7 @@ checkCreate = CheckEditable.new({ to: AddressDomestic.new({ name: "Harry Zhang", address_line1: "2261 Market Street", - address_line2: "Ste 5668", + address_line2: "STE 5668", address_city: "San Francisco", address_state: "CA", address_zip: "94114", diff --git a/Gemfile b/Gemfile old mode 100644 new mode 100755 diff --git a/LICENSE b/LICENSE old mode 100644 new mode 100755 diff --git a/MIGRATION.md b/MIGRATION.md old mode 100644 new mode 100755 diff --git a/Rakefile b/Rakefile old mode 100644 new mode 100755 diff --git a/docs/Address.md b/docs/Address.md old mode 100644 new mode 100755 index 1e0ca60..0142fff --- a/docs/Address.md +++ b/docs/Address.md @@ -1,49 +1,52 @@ # Lob::Address -## Class instance methods - -### `openapi_one_of` - -Returns the list of classes defined in oneOf. - -#### Example - -```ruby -require 'lob' - -Lob::Address.openapi_one_of -# => -# [ -# :'IntlAddress', -# :'UsAddress' -# ] -``` - -### build - -Find the appropriate object from the `openapi_one_of` list and casts the data into it. - -#### Example +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **id** | **String** | Unique identifier prefixed with `adr_`. | [optional] | +| **description** | **String** | An internal description that identifies this resource. Must be no longer than 255 characters. | [optional] | +| **name** | **String** | name associated with address | [optional] | +| **company** | **String** | Either `name` or `company` is required, you may also add both. | [optional] | +| **phone** | **String** | Must be no longer than 40 characters. | [optional] | +| **email** | **String** | Must be no longer than 100 characters. | [optional] | +| **metadata** | **Hash<String, String>** | Use metadata to store custom information for tagging and labeling back to your internal systems. Must be an object with up to 20 key-value pairs. Keys must be at most 40 characters and values must be at most 500 characters. Neither can contain the characters `\"` and `\\`. i.e. '{\"customer_id\" : \"NEWYORK2015\"}' Nested objects are not supported. See [Metadata](#section/Metadata) for more information. | [optional] | +| **address_line1** | **String** | | [optional] | +| **address_line2** | **String** | | [optional] | +| **address_city** | **String** | | [optional] | +| **address_state** | **String** | 2 letter state short-name code | [optional] | +| **address_zip** | **String** | Must follow the ZIP format of `12345` or ZIP+4 format of `12345-1234`. | [optional] | +| **address_country** | [**CountryExtendedExpanded**](CountryExtendedExpanded.md) | | [optional] | +| **object** | **String** | | [optional][default to 'address'] | +| **date_created** | **Time** | A timestamp in ISO 8601 format of the date the resource was created. | [optional] | +| **date_modified** | **Time** | A timestamp in ISO 8601 format of the date the resource was last modified. | [optional] | +| **deleted** | **Boolean** | Only returned if the resource has been successfully deleted. | [optional] | +| **recipient_moved** | **Boolean** | Only returned for accounts on certain <a href=\"https://dashboard.lob.com/#/settings/editions\">Print &amp; Mail Editions</a>. Value is `true` if the address was altered because the recipient filed for a <a href=\"#ncoa\">National Change of Address (NCOA)</a>, `false` if the NCOA check was run but no altered address was found, and `null` if the NCOA check was not run. The NCOA check does not happen for non-US addresses, for non-deliverable US addresses, or for addresses created before the NCOA feature was added to your account. | [optional] | + +## Example ```ruby require 'lob' -Lob::Address.build(data) -# => # - -Lob::Address.build(data_that_doesnt_match) -# => nil +instance = Lob::Address.new( + id: null, + description: null, + name: null, + company: null, + phone: null, + email: null, + metadata: null, + address_line1: null, + address_line2: null, + address_city: null, + address_state: null, + address_zip: null, + address_country: null, + object: null, + date_created: null, + date_modified: null, + deleted: null, + recipient_moved: null +) ``` -#### Parameters - -| Name | Type | Description | -| ---- | ---- | ----------- | -| **data** | **Mixed** | data to be matched against the list of oneOf items | - -#### Return type - -- `IntlAddress` -- `UsAddress` -- `nil` (if no type matches) - diff --git a/docs/AddressDeletion.md b/docs/AddressDeletion.md index 741ece9..bfea59b 100755 --- a/docs/AddressDeletion.md +++ b/docs/AddressDeletion.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::AddressDeletion.new( id: null, diff --git a/docs/AddressDomestic.md b/docs/AddressDomestic.md index 1272139..c0399e9 100755 --- a/docs/AddressDomestic.md +++ b/docs/AddressDomestic.md @@ -20,7 +20,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::AddressDomestic.new( address_line1: null, diff --git a/docs/AddressDomesticExpanded.md b/docs/AddressDomesticExpanded.md index 768bf97..42956fe 100755 --- a/docs/AddressDomesticExpanded.md +++ b/docs/AddressDomesticExpanded.md @@ -20,7 +20,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::AddressDomesticExpanded.new( address_line1: null, diff --git a/docs/AddressEditable.md b/docs/AddressEditable.md index 2781c07..d2506e6 100755 --- a/docs/AddressEditable.md +++ b/docs/AddressEditable.md @@ -20,7 +20,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::AddressEditable.new( address_line1: null, diff --git a/docs/AddressList.md b/docs/AddressList.md index 94bc3d8..10a0b02 100755 --- a/docs/AddressList.md +++ b/docs/AddressList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::AddressList.new( data: null, diff --git a/docs/AddressesApi.md b/docs/AddressesApi.md index 1e2e9ab..57686b1 100755 --- a/docs/AddressesApi.md +++ b/docs/AddressesApi.md @@ -22,7 +22,7 @@ Creates a new address given information ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -92,7 +92,7 @@ Deletes the details of an existing address. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -162,7 +162,7 @@ Retrieves the details of an existing address. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -232,7 +232,7 @@ Returns a list of your addresses. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/BankAccount.md b/docs/BankAccount.md index 89d7033..00eb129 100755 --- a/docs/BankAccount.md +++ b/docs/BankAccount.md @@ -22,7 +22,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BankAccount.new( description: null, diff --git a/docs/BankAccountDeletion.md b/docs/BankAccountDeletion.md index b1af519..b6c75c1 100755 --- a/docs/BankAccountDeletion.md +++ b/docs/BankAccountDeletion.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BankAccountDeletion.new( id: null, diff --git a/docs/BankAccountList.md b/docs/BankAccountList.md index 70831ce..c46f10d 100755 --- a/docs/BankAccountList.md +++ b/docs/BankAccountList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BankAccountList.new( data: null, diff --git a/docs/BankAccountVerify.md b/docs/BankAccountVerify.md index 84621ce..6a65648 100755 --- a/docs/BankAccountVerify.md +++ b/docs/BankAccountVerify.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BankAccountVerify.new( amounts: null diff --git a/docs/BankAccountWritable.md b/docs/BankAccountWritable.md index b2aff85..173c5ce 100755 --- a/docs/BankAccountWritable.md +++ b/docs/BankAccountWritable.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BankAccountWritable.new( description: null, diff --git a/docs/BankAccountsApi.md b/docs/BankAccountsApi.md index 6c305db..3dea905 100755 --- a/docs/BankAccountsApi.md +++ b/docs/BankAccountsApi.md @@ -23,7 +23,7 @@ Creates a new bank account with the provided properties. Bank accounts created i ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -93,7 +93,7 @@ Permanently deletes a bank account. It cannot be undone. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -163,7 +163,7 @@ Retrieves the details of an existing bank account. You need only supply the uniq ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -233,7 +233,7 @@ Verify a bank account in order to create a check. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -305,7 +305,7 @@ Returns a list of your bank accounts. The bank accounts are returned sorted by c ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/BankTypeEnum.md b/docs/BankTypeEnum.md index 0edda77..3981835 100755 --- a/docs/BankTypeEnum.md +++ b/docs/BankTypeEnum.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BankTypeEnum.new() ``` diff --git a/docs/BillingGroup.md b/docs/BillingGroup.md index 5ad9d37..727c222 100755 --- a/docs/BillingGroup.md +++ b/docs/BillingGroup.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BillingGroup.new( description: null, diff --git a/docs/BillingGroupEditable.md b/docs/BillingGroupEditable.md index 425df22..f29fd50 100755 --- a/docs/BillingGroupEditable.md +++ b/docs/BillingGroupEditable.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BillingGroupEditable.new( description: null, diff --git a/docs/BillingGroupList.md b/docs/BillingGroupList.md index f7c7176..0c3d29b 100755 --- a/docs/BillingGroupList.md +++ b/docs/BillingGroupList.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BillingGroupList.new( data: null, diff --git a/docs/BillingGroupsApi.md b/docs/BillingGroupsApi.md index 7b723f5..701b5e6 100755 --- a/docs/BillingGroupsApi.md +++ b/docs/BillingGroupsApi.md @@ -22,7 +22,7 @@ Creates a new billing_group with the provided properties. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -92,7 +92,7 @@ Retrieves the details of an existing billing_group. You need only supply the uni ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -162,7 +162,7 @@ Updates all editable attributes of the billing_group with the given id. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -234,7 +234,7 @@ Returns a list of your billing_groups. The billing_groups are returned sorted by ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/Buckslip.md b/docs/Buckslip.md index 1140c2b..53cae4c 100755 --- a/docs/Buckslip.md +++ b/docs/Buckslip.md @@ -30,7 +30,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Buckslip.new( id: null, diff --git a/docs/BuckslipDeletion.md b/docs/BuckslipDeletion.md index 59b9ee7..577fd88 100755 --- a/docs/BuckslipDeletion.md +++ b/docs/BuckslipDeletion.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BuckslipDeletion.new( id: null, diff --git a/docs/BuckslipEditable.md b/docs/BuckslipEditable.md index d5b496e..8282438 100755 --- a/docs/BuckslipEditable.md +++ b/docs/BuckslipEditable.md @@ -12,7 +12,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BuckslipEditable.new( front: null, diff --git a/docs/BuckslipOrder.md b/docs/BuckslipOrder.md index 61a271b..fb22bbb 100755 --- a/docs/BuckslipOrder.md +++ b/docs/BuckslipOrder.md @@ -21,7 +21,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BuckslipOrder.new( date_created: null, diff --git a/docs/BuckslipOrderEditable.md b/docs/BuckslipOrderEditable.md index 9cfa242..02d1efa 100755 --- a/docs/BuckslipOrderEditable.md +++ b/docs/BuckslipOrderEditable.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BuckslipOrderEditable.new( quantity: null diff --git a/docs/BuckslipOrdersApi.md b/docs/BuckslipOrdersApi.md index d458061..f4fe8f1 100755 --- a/docs/BuckslipOrdersApi.md +++ b/docs/BuckslipOrdersApi.md @@ -20,7 +20,7 @@ Creates a new buckslip order given information ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -92,7 +92,7 @@ Retrieves the buckslip orders associated with the given buckslip id. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/BuckslipOrdersList.md b/docs/BuckslipOrdersList.md index 9b30f92..1103424 100755 --- a/docs/BuckslipOrdersList.md +++ b/docs/BuckslipOrdersList.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BuckslipOrdersList.new( object: null, diff --git a/docs/BuckslipUpdatable.md b/docs/BuckslipUpdatable.md index 4ee2529..a7d7030 100755 --- a/docs/BuckslipUpdatable.md +++ b/docs/BuckslipUpdatable.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BuckslipUpdatable.new( description: null, diff --git a/docs/BuckslipsApi.md b/docs/BuckslipsApi.md index 549a76d..db6dfa9 100755 --- a/docs/BuckslipsApi.md +++ b/docs/BuckslipsApi.md @@ -13,7 +13,7 @@ All URIs are relative to *https://api.lob.com/v1* ## buckslip_create -> buckslip_create(buckslip_editable) +> buckslip_create(buckslip_editable, opts) create @@ -23,7 +23,7 @@ Creates a new buckslip given information ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -33,10 +33,13 @@ end api_instance = Lob::BuckslipsApi.new buckslip_editable = Lob::BuckslipEditable.new({front: 'front_example'}) # BuckslipEditable | +opts = { + front: TODO # Object | An optional file upload as either a byte array or file type. +} begin # create - result = api_instance.create(buckslip_editable) + result = api_instance.create(buckslip_editable, opts) p result rescue Lob::ApiError => e puts "Error when calling BuckslipsApi->create: #{e}" @@ -47,12 +50,12 @@ end This returns an Array which contains the response data, status code and headers. -> , Integer, Hash)> buckslip_create_with_http_info(buckslip_editable) +> , Integer, Hash)> buckslip_create_with_http_info(buckslip_editable, opts) ```ruby begin # create - data, status_code, headers = api_instance.buckslip_create_with_http_info(buckslip_editable) + data, status_code, headers = api_instance.buckslip_create_with_http_info(buckslip_editable, opts) p status_code # => 2xx p headers # => { ... } p data # => @@ -66,6 +69,7 @@ end | Name | Type | Description | Notes | | ---- | ---- | ----------- | ----- | | **buckslip_editable** | [**BuckslipEditable**](BuckslipEditable.md) | | | +| **front** | [**Object**](.md) | An optional file upload as either a byte array or file type. | [optional] | ### Return type @@ -93,7 +97,7 @@ Delete an existing buckslip. You need only supply the unique identifier that was ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -163,7 +167,7 @@ Retrieves the details of an existing buckslip. You need only supply the unique c ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -233,7 +237,7 @@ Update the details of an existing buckslip. You need only supply the unique iden ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -305,7 +309,7 @@ Returns a list of your buckslips. The buckslips are returned sorted by creation ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/BuckslipsList.md b/docs/BuckslipsList.md index d1906ae..009bbb4 100755 --- a/docs/BuckslipsList.md +++ b/docs/BuckslipsList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BuckslipsList.new( data: null, diff --git a/docs/BulkError.md b/docs/BulkError.md index 780fc43..4c4aa0c 100755 --- a/docs/BulkError.md +++ b/docs/BulkError.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BulkError.new( error: null diff --git a/docs/BulkErrorProperties.md b/docs/BulkErrorProperties.md index b7f276f..24c26f6 100755 --- a/docs/BulkErrorProperties.md +++ b/docs/BulkErrorProperties.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::BulkErrorProperties.new( message: null, diff --git a/docs/Campaign.md b/docs/Campaign.md index 793aa12..9f50753 100755 --- a/docs/Campaign.md +++ b/docs/Campaign.md @@ -12,7 +12,7 @@ | **send_date** | **Time** | If `schedule_type` is `scheduled_send_date`, provide a date to send this campaign. | [optional] | | **cancel_window_campaign_minutes** | **Integer** | A window, in minutes, within which the campaign can be canceled. | [optional] | | **metadata** | **Hash<String, String>** | Use metadata to store custom information for tagging and labeling back to your internal systems. Must be an object with up to 20 key-value pairs. Keys must be at most 40 characters and values must be at most 500 characters. Neither can contain the characters `\"` and `\\`. i.e. '{\"customer_id\" : \"NEWYORK2015\"}' Nested objects are not supported. See [Metadata](#section/Metadata) for more information. | [optional] | -| **use_type** | [**CmpUseType**](CmpUseType.md) | | [optional] | +| **use_type** | [**CmpUseType**](CmpUseType.md) | | | | **auto_cancel_if_ncoa** | **Boolean** | Whether or not a mail piece should be automatically canceled and not sent if the address is updated via NCOA. | | | **id** | **String** | Unique identifier prefixed with `cmp_`. | | | **account_id** | **String** | Account ID that this campaign is associated with. | [optional] | @@ -26,7 +26,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Campaign.new( billing_group_id: null, diff --git a/docs/CampaignCreative.md b/docs/CampaignCreative.md index a0dc288..a059494 100755 --- a/docs/CampaignCreative.md +++ b/docs/CampaignCreative.md @@ -21,7 +21,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CampaignCreative.new( id: null, diff --git a/docs/CampaignDeletion.md b/docs/CampaignDeletion.md index 11dec75..c85bb4e 100755 --- a/docs/CampaignDeletion.md +++ b/docs/CampaignDeletion.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CampaignDeletion.new( id: null, diff --git a/docs/CampaignUpdatable.md b/docs/CampaignUpdatable.md index 50f9277..1d174d0 100755 --- a/docs/CampaignUpdatable.md +++ b/docs/CampaignUpdatable.md @@ -18,7 +18,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CampaignUpdatable.new( name: null, diff --git a/docs/CampaignWritable.md b/docs/CampaignWritable.md index 34753dd..fca6214 100755 --- a/docs/CampaignWritable.md +++ b/docs/CampaignWritable.md @@ -12,13 +12,13 @@ | **send_date** | **Time** | If `schedule_type` is `scheduled_send_date`, provide a date to send this campaign. | [optional] | | **cancel_window_campaign_minutes** | **Integer** | A window, in minutes, within which the campaign can be canceled. | [optional] | | **metadata** | **Hash<String, String>** | Use metadata to store custom information for tagging and labeling back to your internal systems. Must be an object with up to 20 key-value pairs. Keys must be at most 40 characters and values must be at most 500 characters. Neither can contain the characters `\"` and `\\`. i.e. '{\"customer_id\" : \"NEWYORK2015\"}' Nested objects are not supported. See [Metadata](#section/Metadata) for more information. | [optional] | -| **use_type** | [**CmpUseType**](CmpUseType.md) | | [optional] | +| **use_type** | [**CmpUseType**](CmpUseType.md) | | | | **auto_cancel_if_ncoa** | **Boolean** | Whether or not a mail piece should be automatically canceled and not sent if the address is updated via NCOA. | [optional] | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CampaignWritable.new( billing_group_id: null, diff --git a/docs/CampaignsApi.md b/docs/CampaignsApi.md index c0f880e..df4b140 100755 --- a/docs/CampaignsApi.md +++ b/docs/CampaignsApi.md @@ -23,7 +23,7 @@ Creates a new campaign with the provided properties. See how to launch your firs ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -32,7 +32,7 @@ Lob.configure do |config| end api_instance = Lob::CampaignsApi.new -campaign_writable = Lob::CampaignWritable.new({name: 'name_example', schedule_type: Lob::CmpScheduleType::IMMEDIATE}) # CampaignWritable | +campaign_writable = Lob::CampaignWritable.new({name: 'name_example', schedule_type: Lob::CmpScheduleType::IMMEDIATE, use_type: Lob::CmpUseType::MARKETING}) # CampaignWritable | opts = { x_lang_output: 'native' # String | * `native` - Translate response to the native language of the country in the request * `match` - match the response to the language in the request Default response is in English. } @@ -97,7 +97,7 @@ Delete an existing campaign. You need only supply the unique identifier that was ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -167,7 +167,7 @@ Retrieves the details of an existing campaign. You need only supply the unique c ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -237,7 +237,7 @@ Update the details of an existing campaign. You need only supply the unique iden ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -309,7 +309,7 @@ Returns a list of your campaigns. The campaigns are returned sorted by creation ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/CampaignsList.md b/docs/CampaignsList.md index b85983d..f00ea34 100755 --- a/docs/CampaignsList.md +++ b/docs/CampaignsList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CampaignsList.new( data: null, diff --git a/docs/Card.md b/docs/Card.md index 56c2e45..870313e 100755 --- a/docs/Card.md +++ b/docs/Card.md @@ -27,7 +27,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Card.new( id: null, diff --git a/docs/CardDeletion.md b/docs/CardDeletion.md index cf9f6f4..d340148 100755 --- a/docs/CardDeletion.md +++ b/docs/CardDeletion.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CardDeletion.new( id: null, diff --git a/docs/CardEditable.md b/docs/CardEditable.md index 06f0a20..dac70ae 100755 --- a/docs/CardEditable.md +++ b/docs/CardEditable.md @@ -12,7 +12,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CardEditable.new( front: null, diff --git a/docs/CardList.md b/docs/CardList.md index 96192fb..2f118b4 100755 --- a/docs/CardList.md +++ b/docs/CardList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CardList.new( data: null, diff --git a/docs/CardOrder.md b/docs/CardOrder.md index 30efc0f..c71e100 100755 --- a/docs/CardOrder.md +++ b/docs/CardOrder.md @@ -21,7 +21,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CardOrder.new( id: null, diff --git a/docs/CardOrderEditable.md b/docs/CardOrderEditable.md index 37f064d..c5dd568 100755 --- a/docs/CardOrderEditable.md +++ b/docs/CardOrderEditable.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CardOrderEditable.new( quantity: null diff --git a/docs/CardOrderList.md b/docs/CardOrderList.md index 09aed8c..7f5a14b 100755 --- a/docs/CardOrderList.md +++ b/docs/CardOrderList.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CardOrderList.new( data: null, diff --git a/docs/CardOrdersApi.md b/docs/CardOrdersApi.md index 4546587..3f751ba 100755 --- a/docs/CardOrdersApi.md +++ b/docs/CardOrdersApi.md @@ -20,7 +20,7 @@ Creates a new card order given information ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -92,7 +92,7 @@ Retrieves the card orders associated with the given card id. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/CardUpdatable.md b/docs/CardUpdatable.md index 9aadd4b..4d798ab 100755 --- a/docs/CardUpdatable.md +++ b/docs/CardUpdatable.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CardUpdatable.new( description: null, diff --git a/docs/CardsApi.md b/docs/CardsApi.md index bed3479..e971166 100755 --- a/docs/CardsApi.md +++ b/docs/CardsApi.md @@ -23,7 +23,7 @@ Creates a new card given information ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -93,7 +93,7 @@ Delete an existing card. You need only supply the unique identifier that was ret ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -163,7 +163,7 @@ Retrieves the details of an existing card. You need only supply the unique custo ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -233,7 +233,7 @@ Update the details of an existing card. You need only supply the unique identifi ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -305,7 +305,7 @@ Returns a list of your cards. The cards are returned sorted by creation date, wi ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/Check.md b/docs/Check.md index 4e905d9..078a19c 100755 --- a/docs/Check.md +++ b/docs/Check.md @@ -30,11 +30,12 @@ | **date_created** | **Time** | A timestamp in ISO 8601 format of the date the resource was created. | | | **date_modified** | **Time** | A timestamp in ISO 8601 format of the date the resource was last modified. | | | **deleted** | **Boolean** | Only returned if the resource has been successfully deleted. | [optional] | +| **use_type** | [**ChkUseType**](ChkUseType.md) | | | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Check.new( id: null, @@ -62,7 +63,8 @@ instance = Lob::Check.new( object: null, date_created: null, date_modified: null, - deleted: null + deleted: null, + use_type: null ) ``` diff --git a/docs/CheckDeletion.md b/docs/CheckDeletion.md index 772669f..fea38cf 100755 --- a/docs/CheckDeletion.md +++ b/docs/CheckDeletion.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CheckDeletion.new( id: null, diff --git a/docs/CheckEditable.md b/docs/CheckEditable.md index 1f14ef9..ec1237b 100755 --- a/docs/CheckEditable.md +++ b/docs/CheckEditable.md @@ -20,11 +20,12 @@ | **check_number** | **Integer** | An integer that designates the check number. | [optional] | | **message** | **String** | Max of 400 characters to be included at the bottom of the check page. | [optional] | | **billing_group_id** | **String** | An optional string with the billing group ID to tag your usage with. Is used for billing purposes. Requires special activation to use. See [Billing Group API](https://lob.github.io/lob-openapi/#tag/Billing-Groups) for more information. | [optional] | +| **use_type** | [**ChkUseType**](ChkUseType.md) | | | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CheckEditable.new( from: null, @@ -42,7 +43,8 @@ instance = Lob::CheckEditable.new( memo: null, check_number: null, message: null, - billing_group_id: null + billing_group_id: null, + use_type: null ) ``` diff --git a/docs/CheckList.md b/docs/CheckList.md index 93d8d0c..54e0bc1 100755 --- a/docs/CheckList.md +++ b/docs/CheckList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CheckList.new( data: null, diff --git a/docs/ChecksApi.md b/docs/ChecksApi.md index a93d781..a0ad9cc 100755 --- a/docs/ChecksApi.md +++ b/docs/ChecksApi.md @@ -22,7 +22,7 @@ Completely removes a check from production. This can only be done if the check h ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -92,7 +92,7 @@ Creates a new check with the provided properties. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -101,7 +101,7 @@ Lob.configure do |config| end api_instance = Lob::ChecksApi.new -check_editable = Lob::CheckEditable.new({from: TODO, to: TODO, bank_account: 'bank_account_example', amount: 3.56}) # CheckEditable | +check_editable = Lob::CheckEditable.new({from: TODO, to: TODO, bank_account: 'bank_account_example', amount: 3.56, use_type: Lob::ChkUseType::MARKETING}) # CheckEditable | opts = { idempotency_key: 'idempotency_key_example' # String | A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). } @@ -166,7 +166,7 @@ Retrieves the details of an existing check. You need only supply the unique chec ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -236,7 +236,7 @@ Returns a list of your checks. The checks are returned sorted by creation date, ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -255,7 +255,7 @@ opts = { scheduled: true, # Boolean | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` send_date: { key: 'inner_example'}, # Hash | Filter by date sent. mail_type: Lob::MailType::FIRST_CLASS, # MailType | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. - sort_by: Lob::SortBy3.new # SortBy3 | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + sort_by: Lob::SortBy4.new # SortBy4 | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. } begin @@ -298,7 +298,7 @@ end | **scheduled** | **Boolean** | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` | [optional] | | **send_date** | [**Hash<String, String>**](String.md) | Filter by date sent. | [optional] | | **mail_type** | [**MailType**](.md) | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. | [optional][default to 'usps_first_class'] | -| **sort_by** | [**SortBy3**](.md) | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. | [optional] | +| **sort_by** | [**SortBy4**](.md) | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. | [optional] | ### Return type diff --git a/docs/ChkUseType.md b/docs/ChkUseType.md new file mode 100755 index 0000000..acc2ca5 --- /dev/null +++ b/docs/ChkUseType.md @@ -0,0 +1,15 @@ +# Lob::ChkUseType + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | + +## Example + +```ruby +require 'lob' + +instance = Lob::ChkUseType.new() +``` + diff --git a/docs/CmpScheduleType.md b/docs/CmpScheduleType.md index 9e0c1a1..1b34ed5 100755 --- a/docs/CmpScheduleType.md +++ b/docs/CmpScheduleType.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CmpScheduleType.new() ``` diff --git a/docs/CmpUseType.md b/docs/CmpUseType.md index 5727ca3..4c16284 100755 --- a/docs/CmpUseType.md +++ b/docs/CmpUseType.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CmpUseType.new() ``` diff --git a/docs/CountryExtended.md b/docs/CountryExtended.md index 6d45d2c..15b7eb9 100755 --- a/docs/CountryExtended.md +++ b/docs/CountryExtended.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CountryExtended.new() ``` diff --git a/docs/CountryExtendedExpanded.md b/docs/CountryExtendedExpanded.md index ce7779c..6600b83 100755 --- a/docs/CountryExtendedExpanded.md +++ b/docs/CountryExtendedExpanded.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CountryExtendedExpanded.new() ``` diff --git a/docs/CountryExtendedExpandedNoUs.md b/docs/CountryExtendedExpandedNoUs.md old mode 100644 new mode 100755 diff --git a/docs/CreativePatch.md b/docs/CreativePatch.md index da310c7..a73b36f 100755 --- a/docs/CreativePatch.md +++ b/docs/CreativePatch.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CreativePatch.new( from: null, diff --git a/docs/CreativeResponse.md b/docs/CreativeResponse.md index 889125f..4ce5610 100755 --- a/docs/CreativeResponse.md +++ b/docs/CreativeResponse.md @@ -21,7 +21,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CreativeResponse.new( id: null, diff --git a/docs/CreativeWritable.md b/docs/CreativeWritable.md index ec8579d..b0a7cfc 100755 --- a/docs/CreativeWritable.md +++ b/docs/CreativeWritable.md @@ -17,7 +17,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CreativeWritable.new( from: null, diff --git a/docs/CreativesApi.md b/docs/CreativesApi.md index 6ca6d27..61cebeb 100755 --- a/docs/CreativesApi.md +++ b/docs/CreativesApi.md @@ -21,7 +21,7 @@ Creates a new creative with the provided properties ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -95,7 +95,7 @@ Retrieves the details of an existing creative. You need only supply the unique c ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -165,7 +165,7 @@ Update the details of an existing creative. You need only supply the unique iden ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/CustomEnvelopeReturned.md b/docs/CustomEnvelopeReturned.md index 39e4911..1baa808 100755 --- a/docs/CustomEnvelopeReturned.md +++ b/docs/CustomEnvelopeReturned.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::CustomEnvelopeReturned.new( id: null, diff --git a/docs/DefaultApi.md b/docs/DefaultApi.md index cb796fe..354cb93 100755 --- a/docs/DefaultApi.md +++ b/docs/DefaultApi.md @@ -19,7 +19,7 @@ Don't call this. It's so that the right models can be generated. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/DeliverabilityAnalysis.md b/docs/DeliverabilityAnalysis.md index 463dbe7..a6ec1bd 100755 --- a/docs/DeliverabilityAnalysis.md +++ b/docs/DeliverabilityAnalysis.md @@ -23,24 +23,24 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::DeliverabilityAnalysis.new( - dpv_confirmation: nil, - dpv_cmra: nil, - dpv_vacant: nil, - dpv_active: nil, - dpv_inactive_reason: nil, - dpv_throwback: nil, - dpv_non_delivery_day_flag: nil, - dpv_non_delivery_day_values: nil, - dpv_no_secure_location: nil, - dpv_door_not_accessible: nil, - dpv_footnotes: nil, - ews_match: nil, - lacs_indicator: nil, - lacs_return_code: nil, - suite_return_code: nil + dpv_confirmation: null, + dpv_cmra: null, + dpv_vacant: null, + dpv_active: null, + dpv_inactive_reason: null, + dpv_throwback: null, + dpv_non_delivery_day_flag: null, + dpv_non_delivery_day_values: null, + dpv_no_secure_location: null, + dpv_door_not_accessible: null, + dpv_footnotes: null, + ews_match: null, + lacs_indicator: null, + lacs_return_code: null, + suite_return_code: null ) ``` diff --git a/docs/DpvFootnote.md b/docs/DpvFootnote.md index 814a08b..c3a48e0 100755 --- a/docs/DpvFootnote.md +++ b/docs/DpvFootnote.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::DpvFootnote.new() ``` diff --git a/docs/EngineHtml.md b/docs/EngineHtml.md index 9eb7e44..827e02b 100755 --- a/docs/EngineHtml.md +++ b/docs/EngineHtml.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::EngineHtml.new() ``` diff --git a/docs/EventType.md b/docs/EventType.md index 77d3f01..c1a7c20 100755 --- a/docs/EventType.md +++ b/docs/EventType.md @@ -12,7 +12,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::EventType.new( id: null, diff --git a/docs/Events.md b/docs/Events.md index c2dd0e7..726104b 100755 --- a/docs/Events.md +++ b/docs/Events.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Events.new( id: null, diff --git a/docs/Export.md b/docs/Export.md index 49f4e8e..6f47c7d 100755 --- a/docs/Export.md +++ b/docs/Export.md @@ -16,7 +16,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Export.new( id: null, diff --git a/docs/ExportModel.md b/docs/ExportModel.md index eae12c7..6846bd1 100755 --- a/docs/ExportModel.md +++ b/docs/ExportModel.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::ExportModel.new( type: null diff --git a/docs/GeocodeAddresses.md b/docs/GeocodeAddresses.md index 5c4580c..9332000 100755 --- a/docs/GeocodeAddresses.md +++ b/docs/GeocodeAddresses.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::GeocodeAddresses.new( components: null, diff --git a/docs/GeocodeComponents.md b/docs/GeocodeComponents.md index 833123b..f0eac01 100755 --- a/docs/GeocodeComponents.md +++ b/docs/GeocodeComponents.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::GeocodeComponents.new( zip_code: null, diff --git a/docs/HTTPValidationError.md b/docs/HTTPValidationError.md index 7cd4036..135d082 100755 --- a/docs/HTTPValidationError.md +++ b/docs/HTTPValidationError.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::HTTPValidationError.new( detail: null diff --git a/docs/IdentityValidation.md b/docs/IdentityValidation.md index 2a72468..f222b84 100755 --- a/docs/IdentityValidation.md +++ b/docs/IdentityValidation.md @@ -17,7 +17,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IdentityValidation.new( id: null, diff --git a/docs/IdentityValidationApi.md b/docs/IdentityValidationApi.md index dda427b..f9ffc68 100755 --- a/docs/IdentityValidationApi.md +++ b/docs/IdentityValidationApi.md @@ -19,7 +19,7 @@ Validates whether a given name is associated with an address. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/InlineObject.md b/docs/InlineObject.md index af5fec1..fb69baa 100755 --- a/docs/InlineObject.md +++ b/docs/InlineObject.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::InlineObject.new( file: null diff --git a/docs/IntlAddress.md b/docs/IntlAddress.md old mode 100644 new mode 100755 diff --git a/docs/IntlAutocompletions.md b/docs/IntlAutocompletions.md index bde4743..1fe3636 100755 --- a/docs/IntlAutocompletions.md +++ b/docs/IntlAutocompletions.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IntlAutocompletions.new( id: null, diff --git a/docs/IntlAutocompletionsApi.md b/docs/IntlAutocompletionsApi.md index 5d85f03..c4c92b6 100755 --- a/docs/IntlAutocompletionsApi.md +++ b/docs/IntlAutocompletionsApi.md @@ -19,7 +19,7 @@ Given an address prefix consisting of a partial primary line and country, as wel ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -28,7 +28,7 @@ Lob.configure do |config| end api_instance = Lob::IntlAutocompletionsApi.new -intl_autocompletions_writable = Lob::IntlAutocompletionsWritable.new({address_prefix: 'address_prefix_example', country: Lob::CountryExtended::AD}) # IntlAutocompletionsWritable | +intl_autocompletions_writable = Lob::IntlAutocompletionsWritable.new({address_prefix: 'address_prefix_example', country: Lob::CountryExtended::EMPTY}) # IntlAutocompletionsWritable | opts = { x_lang_output: 'native' # String | * `native` - Translate response to the native language of the country in the request * `match` - match the response to the language in the request Default response is in English. } diff --git a/docs/IntlAutocompletionsWritable.md b/docs/IntlAutocompletionsWritable.md index 952f25e..a6dc37d 100755 --- a/docs/IntlAutocompletionsWritable.md +++ b/docs/IntlAutocompletionsWritable.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IntlAutocompletionsWritable.new( address_prefix: null, diff --git a/docs/IntlComponents.md b/docs/IntlComponents.md index a7a2fed..57e1967 100755 --- a/docs/IntlComponents.md +++ b/docs/IntlComponents.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IntlComponents.new( primary_number: null, diff --git a/docs/IntlSuggestions.md b/docs/IntlSuggestions.md index c71a3d0..6eb832b 100755 --- a/docs/IntlSuggestions.md +++ b/docs/IntlSuggestions.md @@ -15,7 +15,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IntlSuggestions.new( primary_number_range: null, diff --git a/docs/IntlVerification.md b/docs/IntlVerification.md index 881ee33..8ced1a5 100755 --- a/docs/IntlVerification.md +++ b/docs/IntlVerification.md @@ -19,7 +19,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IntlVerification.new( id: null, diff --git a/docs/IntlVerificationOrError.md b/docs/IntlVerificationOrError.md index 519eb00..f63e233 100755 --- a/docs/IntlVerificationOrError.md +++ b/docs/IntlVerificationOrError.md @@ -20,7 +20,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IntlVerificationOrError.new( id: null, diff --git a/docs/IntlVerificationWritable.md b/docs/IntlVerificationWritable.md index 5ae1d02..e035d25 100755 --- a/docs/IntlVerificationWritable.md +++ b/docs/IntlVerificationWritable.md @@ -16,7 +16,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IntlVerificationWritable.new( recipient: null, diff --git a/docs/IntlVerifications.md b/docs/IntlVerifications.md index 1ea9e46..795e4f6 100755 --- a/docs/IntlVerifications.md +++ b/docs/IntlVerifications.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IntlVerifications.new( addresses: null, diff --git a/docs/IntlVerificationsApi.md b/docs/IntlVerificationsApi.md index 8e840c8..478ac92 100755 --- a/docs/IntlVerificationsApi.md +++ b/docs/IntlVerificationsApi.md @@ -20,7 +20,7 @@ Verify a list of international (except US or US territories) address with a live ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -29,7 +29,7 @@ Lob.configure do |config| end api_instance = Lob::IntlVerificationsApi.new -intl_verifications_payload = Lob::IntlVerificationsPayload.new({addresses: [Lob::MultipleComponentsIntl.new({primary_line: 'primary_line_example', country: Lob::CountryExtended::AD})]}) # IntlVerificationsPayload | +intl_verifications_payload = Lob::IntlVerificationsPayload.new({addresses: [Lob::MultipleComponentsIntl.new({primary_line: 'primary_line_example', country: Lob::CountryExtended::EMPTY})]}) # IntlVerificationsPayload | begin # verifyBulk @@ -90,7 +90,7 @@ Verify an international (except US or US territories) address with a live API ke ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/IntlVerificationsPayload.md b/docs/IntlVerificationsPayload.md index ffe5af9..45efea6 100755 --- a/docs/IntlVerificationsPayload.md +++ b/docs/IntlVerificationsPayload.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::IntlVerificationsPayload.new( addresses: null diff --git a/docs/Letter.md b/docs/Letter.md index 37fb739..9008797 100755 --- a/docs/Letter.md +++ b/docs/Letter.md @@ -32,11 +32,13 @@ | **return_envelope** | [**AnyType**](.md) | | | | **perforated_page** | **Integer** | Required if `return_envelope` is `true`. The number of the page that should be perforated for use with the return envelope. Must be greater than or equal to `1`. The blank page added by `address_placement=insert_blank_page` will be ignored when considering the perforated page number. To see how perforation will impact your letter design, view our [perforation guide](https://s3-us-west-2.amazonaws.com/public.lob.com/assets/templates/letter_perf_template.pdf). | [optional] | | **custom_envelope** | [**LetterCustomEnvelope**](LetterCustomEnvelope.md) | | [optional] | +| **campaign_id** | **String** | The unique ID of the associated campaign if the resource was generated from a campaign. | [optional] | +| **use_type** | [**LtrUseType**](LtrUseType.md) | | | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Letter.new( to: null, @@ -66,7 +68,9 @@ instance = Lob::Letter.new( address_placement: null, return_envelope: null, perforated_page: null, - custom_envelope: null + custom_envelope: null, + campaign_id: null, + use_type: null ) ``` diff --git a/docs/LetterCustomEnvelope.md b/docs/LetterCustomEnvelope.md index 986512a..451e61f 100755 --- a/docs/LetterCustomEnvelope.md +++ b/docs/LetterCustomEnvelope.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::LetterCustomEnvelope.new( id: null, diff --git a/docs/LetterDeletion.md b/docs/LetterDeletion.md index 5aeb8b3..5f0f7de 100755 --- a/docs/LetterDeletion.md +++ b/docs/LetterDeletion.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::LetterDeletion.new( id: null, diff --git a/docs/LetterDetailsReturned.md b/docs/LetterDetailsReturned.md index 5507370..80cca8b 100755 --- a/docs/LetterDetailsReturned.md +++ b/docs/LetterDetailsReturned.md @@ -18,7 +18,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::LetterDetailsReturned.new( color: null, diff --git a/docs/LetterDetailsWritable.md b/docs/LetterDetailsWritable.md index f76f869..b5ce499 100755 --- a/docs/LetterDetailsWritable.md +++ b/docs/LetterDetailsWritable.md @@ -16,7 +16,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::LetterDetailsWritable.new( address_placement: null, diff --git a/docs/LetterEditable.md b/docs/LetterEditable.md index b72bec3..db790ce 100755 --- a/docs/LetterEditable.md +++ b/docs/LetterEditable.md @@ -22,11 +22,12 @@ | **cards** | **Array<String>** | A single-element array containing an existing card id in a string format. See [cards](#tag/Cards) for more information. | [optional] | | **billing_group_id** | **String** | An optional string with the billing group ID to tag your usage with. Is used for billing purposes. Requires special activation to use. See [Billing Group API](https://lob.github.io/lob-openapi/#tag/Billing-Groups) for more information. | [optional] | | **qr_code** | [**QrCode**](QrCode.md) | | [optional] | +| **use_type** | [**LtrUseType**](LtrUseType.md) | | | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::LetterEditable.new( description: null, @@ -46,7 +47,8 @@ instance = Lob::LetterEditable.new( extra_service: null, cards: null, billing_group_id: null, - qr_code: null + qr_code: null, + use_type: null ) ``` diff --git a/docs/LetterList.md b/docs/LetterList.md index 58b40b1..e8d0701 100755 --- a/docs/LetterList.md +++ b/docs/LetterList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::LetterList.new( data: null, diff --git a/docs/LettersApi.md b/docs/LettersApi.md index b071c80..52f08e6 100755 --- a/docs/LettersApi.md +++ b/docs/LettersApi.md @@ -22,7 +22,7 @@ Completely removes a letter from production. This can only be done if the letter ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -92,7 +92,7 @@ Creates a new letter given information ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -101,9 +101,10 @@ Lob.configure do |config| end api_instance = Lob::LettersApi.new -letter_editable = Lob::LetterEditable.new({color: false, to: TODO, from: TODO, file: 'file_example'}) # LetterEditable | +letter_editable = Lob::LetterEditable.new({color: false, to: TODO, from: TODO, file: 'file_example', use_type: Lob::LtrUseType::MARKETING}) # LetterEditable | opts = { - idempotency_key: 'idempotency_key_example' # String | A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). + idempotency_key: 'idempotency_key_example', # String | A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). + file: TODO # Object | An optional file upload as either a byte array or file type. } begin @@ -139,6 +140,7 @@ end | ---- | ---- | ----------- | ----- | | **letter_editable** | [**LetterEditable**](LetterEditable.md) | | | | **idempotency_key** | **String** | A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). | [optional] | +| **file** | [**Object**](.md) | An optional file upload as either a byte array or file type. | [optional] | ### Return type @@ -166,7 +168,7 @@ Retrieves the details of an existing letter. You need only supply the unique let ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -236,7 +238,7 @@ Returns a list of your letters. The letters are returned sorted by creation date ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -256,7 +258,7 @@ opts = { scheduled: true, # Boolean | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` send_date: { key: 'inner_example'}, # Hash | Filter by date sent. mail_type: Lob::MailType::FIRST_CLASS, # MailType | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. - sort_by: Lob::SortBy3.new # SortBy3 | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + sort_by: Lob::SortBy4.new # SortBy4 | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. } begin @@ -300,7 +302,7 @@ end | **scheduled** | **Boolean** | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` | [optional] | | **send_date** | [**Hash<String, String>**](String.md) | Filter by date sent. | [optional] | | **mail_type** | [**MailType**](.md) | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. | [optional][default to 'usps_first_class'] | -| **sort_by** | [**SortBy3**](.md) | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. | [optional] | +| **sort_by** | [**SortBy4**](.md) | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. | [optional] | ### Return type diff --git a/docs/LobConfidenceScore.md b/docs/LobConfidenceScore.md index 84d11e4..b3ed95f 100755 --- a/docs/LobConfidenceScore.md +++ b/docs/LobConfidenceScore.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::LobConfidenceScore.new( score: null, diff --git a/docs/LobError.md b/docs/LobError.md index 6240e72..f27efd2 100755 --- a/docs/LobError.md +++ b/docs/LobError.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::LobError.new( message: null, diff --git a/docs/Location.md b/docs/Location.md index 488db8f..8665889 100755 --- a/docs/Location.md +++ b/docs/Location.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Location.new( latitude: null, diff --git a/docs/LocationAnalysis.md b/docs/LocationAnalysis.md index 6710112..0265741 100755 --- a/docs/LocationAnalysis.md +++ b/docs/LocationAnalysis.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::LocationAnalysis.new( latitude: null, diff --git a/docs/LtrUseType.md b/docs/LtrUseType.md new file mode 100755 index 0000000..8c50ef4 --- /dev/null +++ b/docs/LtrUseType.md @@ -0,0 +1,15 @@ +# Lob::LtrUseType + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | + +## Example + +```ruby +require 'lob' + +instance = Lob::LtrUseType.new() +``` + diff --git a/docs/MailType.md b/docs/MailType.md index 101c57f..e38cab2 100755 --- a/docs/MailType.md +++ b/docs/MailType.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::MailType.new() ``` diff --git a/docs/MultiLineAddress.md b/docs/MultiLineAddress.md index be620f6..ad52f33 100755 --- a/docs/MultiLineAddress.md +++ b/docs/MultiLineAddress.md @@ -16,7 +16,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::MultiLineAddress.new( recipient: null, diff --git a/docs/MultipleComponents.md b/docs/MultipleComponents.md index 23c6d8a..f4a0e33 100755 --- a/docs/MultipleComponents.md +++ b/docs/MultipleComponents.md @@ -16,7 +16,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::MultipleComponents.new( recipient: null, diff --git a/docs/MultipleComponentsIntl.md b/docs/MultipleComponentsIntl.md index 6b8178d..d903f78 100755 --- a/docs/MultipleComponentsIntl.md +++ b/docs/MultipleComponentsIntl.md @@ -15,7 +15,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::MultipleComponentsIntl.new( recipient: null, diff --git a/docs/MultipleComponentsList.md b/docs/MultipleComponentsList.md index 3dac25a..ae24122 100755 --- a/docs/MultipleComponentsList.md +++ b/docs/MultipleComponentsList.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::MultipleComponentsList.new( addresses: null diff --git a/docs/OptionalAddressColumnMapping.md b/docs/OptionalAddressColumnMapping.md new file mode 100755 index 0000000..2b067cb --- /dev/null +++ b/docs/OptionalAddressColumnMapping.md @@ -0,0 +1,22 @@ +# Lob::OptionalAddressColumnMapping + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **address_line2** | **String** | The column header from the csv file that should be mapped to the optional field \"address_line2\" | [default to 'null'] | +| **company** | **String** | The column header from the csv file that should be mapped to the optional field \"company\" | [default to 'null'] | +| **address_country** | **String** | The column header from the csv file that should be mapped to the optional field \"address_country\" | [default to 'null'] | + +## Example + +```ruby +require 'lob' + +instance = Lob::OptionalAddressColumnMapping.new( + address_line2: null, + company: null, + address_country: null +) +``` + diff --git a/docs/PlaceholderModel.md b/docs/PlaceholderModel.md index af1b869..d5c14a9 100755 --- a/docs/PlaceholderModel.md +++ b/docs/PlaceholderModel.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::PlaceholderModel.new( return_envelope: null, diff --git a/docs/Postcard.md b/docs/Postcard.md index 29e4ad7..36c8356 100755 --- a/docs/Postcard.md +++ b/docs/Postcard.md @@ -26,11 +26,12 @@ | **mail_type** | [**MailType**](MailType.md) | | [optional][default to 'usps_first_class'] | | **merge_variables** | **Object** | You can input a merge variable payload object to your template to render dynamic content. For example, if you have a template like: `{{variable_name}}`, pass in `{\"variable_name\": \"Harry\"}` to render `Harry`. `merge_variables` must be an object. Any type of value is accepted as long as the object is valid JSON; you can use `strings`, `numbers`, `booleans`, `arrays`, `objects`, or `null`. The max length of the object is 25,000 characters. If you call `JSON.stringify` on your object, it can be no longer than 25,000 characters. Your variable names cannot contain any whitespace or any of the following special characters: `!`, `\"`, `#`, `%`, `&`, `'`, `(`, `)`, `*`, `+`, `,`, `/`, `;`, `<`, `=`, `>`, `@`, `[`, `\\`, `]`, `^`, `` ` ``, `{`, `|`, `}`, `~`. More instructions can be found in [our guide to using html and merge variables](https://lob.com/resources/guides/general/using-html-and-merge-variables). Depending on your [Merge Variable strictness](https://dashboard.lob.com/#/settings/account) setting, if you define variables in your HTML but do not pass them here, you will either receive an error or the variable will render as an empty string. | [optional] | | **send_date** | **Time** | A timestamp in ISO 8601 format which specifies a date after the current time and up to 180 days in the future to send the letter off for production. Setting a send date overrides the default [cancellation window](#section/Cancellation-Windows) applied to the mailpiece. Until the `send_date` has passed, the mailpiece can be canceled. If a date in the format `2017-11-01` is passed, it will evaluate to midnight UTC of that date (`2017-11-01T00:00:00.000Z`). If a datetime is passed, that exact time will be used. A `send_date` passed with no time zone will default to UTC, while a `send_date` passed with a time zone will be converted to UTC. | [optional] | +| **use_type** | [**PscUseType**](PscUseType.md) | | [optional] | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Postcard.new( id: null, @@ -54,7 +55,8 @@ instance = Lob::Postcard.new( metadata: null, mail_type: null, merge_variables: null, - send_date: null + send_date: null, + use_type: null ) ``` diff --git a/docs/PostcardDeletion.md b/docs/PostcardDeletion.md index 8c30ae4..b612c48 100755 --- a/docs/PostcardDeletion.md +++ b/docs/PostcardDeletion.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::PostcardDeletion.new( id: null, diff --git a/docs/PostcardDetailsReturned.md b/docs/PostcardDetailsReturned.md index 75be597..62745b8 100755 --- a/docs/PostcardDetailsReturned.md +++ b/docs/PostcardDetailsReturned.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::PostcardDetailsReturned.new( mail_type: null, diff --git a/docs/PostcardDetailsWritable.md b/docs/PostcardDetailsWritable.md index 991deea..4c83a61 100755 --- a/docs/PostcardDetailsWritable.md +++ b/docs/PostcardDetailsWritable.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::PostcardDetailsWritable.new( mail_type: null, diff --git a/docs/PostcardEditable.md b/docs/PostcardEditable.md index 439eff8..9e4d4d9 100755 --- a/docs/PostcardEditable.md +++ b/docs/PostcardEditable.md @@ -16,11 +16,12 @@ | **back** | **String** | The artwork to use as the back of your postcard. | | | **billing_group_id** | **String** | An optional string with the billing group ID to tag your usage with. Is used for billing purposes. Requires special activation to use. See [Billing Group API](https://lob.github.io/lob-openapi/#tag/Billing-Groups) for more information. | [optional] | | **qr_code** | [**QrCode**](QrCode.md) | | [optional] | +| **use_type** | [**PscUseType**](PscUseType.md) | | | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::PostcardEditable.new( to: null, @@ -34,7 +35,8 @@ instance = Lob::PostcardEditable.new( front: null, back: null, billing_group_id: null, - qr_code: null + qr_code: null, + use_type: null ) ``` diff --git a/docs/PostcardList.md b/docs/PostcardList.md index 9884c3a..21b0b79 100755 --- a/docs/PostcardList.md +++ b/docs/PostcardList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::PostcardList.new( data: null, diff --git a/docs/PostcardSize.md b/docs/PostcardSize.md index 057c39d..546f5da 100755 --- a/docs/PostcardSize.md +++ b/docs/PostcardSize.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::PostcardSize.new() ``` diff --git a/docs/PostcardsApi.md b/docs/PostcardsApi.md index 8fb53a3..cb210a4 100755 --- a/docs/PostcardsApi.md +++ b/docs/PostcardsApi.md @@ -22,7 +22,7 @@ Creates a new postcard given information ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -31,7 +31,7 @@ Lob.configure do |config| end api_instance = Lob::PostcardsApi.new -postcard_editable = Lob::PostcardEditable.new({to: TODO, front: 'front_example', back: 'back_example'}) # PostcardEditable | +postcard_editable = Lob::PostcardEditable.new({to: TODO, front: 'front_example', back: 'back_example', use_type: Lob::PscUseType::MARKETING}) # PostcardEditable | opts = { idempotency_key: 'idempotency_key_example' # String | A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). } @@ -96,7 +96,7 @@ Completely removes a postcard from production. This can only be done if the post ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -166,7 +166,7 @@ Retrieves the details of an existing postcard. You need only supply the unique c ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -236,7 +236,7 @@ Returns a list of your postcards. The addresses are returned sorted by creation ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -256,7 +256,7 @@ opts = { scheduled: true, # Boolean | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` send_date: { key: 'inner_example'}, # Hash | Filter by date sent. mail_type: Lob::MailType::FIRST_CLASS, # MailType | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. - sort_by: Lob::SortBy3.new # SortBy3 | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + sort_by: Lob::SortBy4.new # SortBy4 | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. } begin @@ -300,7 +300,7 @@ end | **scheduled** | **Boolean** | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` | [optional] | | **send_date** | [**Hash<String, String>**](String.md) | Filter by date sent. | [optional] | | **mail_type** | [**MailType**](.md) | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. | [optional][default to 'usps_first_class'] | -| **sort_by** | [**SortBy3**](.md) | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. | [optional] | +| **sort_by** | [**SortBy4**](.md) | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. | [optional] | ### Return type diff --git a/docs/PscUseType.md b/docs/PscUseType.md new file mode 100755 index 0000000..6ac56c7 --- /dev/null +++ b/docs/PscUseType.md @@ -0,0 +1,15 @@ +# Lob::PscUseType + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | + +## Example + +```ruby +require 'lob' + +instance = Lob::PscUseType.new() +``` + diff --git a/docs/QrCode.md b/docs/QrCode.md index f0da891..ab4123d 100755 --- a/docs/QrCode.md +++ b/docs/QrCode.md @@ -15,7 +15,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::QrCode.new( position: null, diff --git a/docs/RequiredAddressColumnMapping.md b/docs/RequiredAddressColumnMapping.md new file mode 100755 index 0000000..8f97129 --- /dev/null +++ b/docs/RequiredAddressColumnMapping.md @@ -0,0 +1,26 @@ +# Lob::RequiredAddressColumnMapping + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **name** | **String** | The column header from the csv file that should be mapped to the required field `name` | [default to 'null'] | +| **address_line1** | **String** | The column header from the csv file that should be mapped to the required field `address_line1` | [default to 'null'] | +| **address_city** | **String** | The column header from the csv file that should be mapped to the required field `address_city` | [default to 'null'] | +| **address_state** | **String** | The column header from the csv file that should be mapped to the required field `address_state` | [default to 'null'] | +| **address_zip** | **String** | The column header from the csv file that should be mapped to the required field `address_zip` | [default to 'null'] | + +## Example + +```ruby +require 'lob' + +instance = Lob::RequiredAddressColumnMapping.new( + name: null, + address_line1: null, + address_city: null, + address_state: null, + address_zip: null +) +``` + diff --git a/docs/ReturnEnvelope.md b/docs/ReturnEnvelope.md index e38455a..abc5648 100755 --- a/docs/ReturnEnvelope.md +++ b/docs/ReturnEnvelope.md @@ -12,7 +12,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::ReturnEnvelope.new( id: null, diff --git a/docs/ReverseGeocode.md b/docs/ReverseGeocode.md index 377f24c..05f3c29 100755 --- a/docs/ReverseGeocode.md +++ b/docs/ReverseGeocode.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::ReverseGeocode.new( id: null, diff --git a/docs/ReverseGeocodeLookupsApi.md b/docs/ReverseGeocodeLookupsApi.md index d9da5eb..8f37914 100755 --- a/docs/ReverseGeocodeLookupsApi.md +++ b/docs/ReverseGeocodeLookupsApi.md @@ -19,7 +19,7 @@ Reverse geocode a valid US location with a live API key. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/SelfMailer.md b/docs/SelfMailer.md index 3b85e98..567a3b7 100755 --- a/docs/SelfMailer.md +++ b/docs/SelfMailer.md @@ -20,11 +20,12 @@ | **object** | **String** | Value is resource type. | [optional][default to 'self_mailer'] | | **tracking_events** | [**Array<TrackingEventCertified>**](TrackingEventCertified.md) | An array of certified tracking events ordered by ascending `time`. Not populated in test mode. | [optional] | | **url** | **String** | A [signed link](#section/Asset-URLs) served over HTTPS. The link returned will expire in 30 days to prevent mis-sharing. Each time a GET request is initiated, a new signed URL will be generated. | | +| **use_type** | [**SfmUseType**](SfmUseType.md) | | | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SelfMailer.new( id: null, @@ -42,7 +43,8 @@ instance = Lob::SelfMailer.new( inside_template_version_id: null, object: null, tracking_events: null, - url: null + url: null, + use_type: null ) ``` diff --git a/docs/SelfMailerDeletion.md b/docs/SelfMailerDeletion.md index e247aa3..e87cd18 100755 --- a/docs/SelfMailerDeletion.md +++ b/docs/SelfMailerDeletion.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SelfMailerDeletion.new( id: null, diff --git a/docs/SelfMailerEditable.md b/docs/SelfMailerEditable.md index 5721d4d..c396514 100755 --- a/docs/SelfMailerEditable.md +++ b/docs/SelfMailerEditable.md @@ -15,11 +15,12 @@ | **inside** | **String** | The artwork to use as the inside of your self mailer. | | | **outside** | **String** | The artwork to use as the outside of your self mailer. | | | **billing_group_id** | **String** | An optional string with the billing group ID to tag your usage with. Is used for billing purposes. Requires special activation to use. See [Billing Group API](https://lob.github.io/lob-openapi/#tag/Billing-Groups) for more information. | [optional] | +| **use_type** | [**SfmUseType**](SfmUseType.md) | | | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SelfMailerEditable.new( to: null, @@ -32,7 +33,8 @@ instance = Lob::SelfMailerEditable.new( send_date: null, inside: null, outside: null, - billing_group_id: null + billing_group_id: null, + use_type: null ) ``` diff --git a/docs/SelfMailerList.md b/docs/SelfMailerList.md index 01dc288..7c5c0bc 100755 --- a/docs/SelfMailerList.md +++ b/docs/SelfMailerList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SelfMailerList.new( data: null, diff --git a/docs/SelfMailerSize.md b/docs/SelfMailerSize.md index 4c718fc..2086bd3 100755 --- a/docs/SelfMailerSize.md +++ b/docs/SelfMailerSize.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SelfMailerSize.new() ``` diff --git a/docs/SelfMailersApi.md b/docs/SelfMailersApi.md index ab6bcf2..24d900d 100755 --- a/docs/SelfMailersApi.md +++ b/docs/SelfMailersApi.md @@ -22,7 +22,7 @@ Creates a new self_mailer given information ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -31,7 +31,7 @@ Lob.configure do |config| end api_instance = Lob::SelfMailersApi.new -self_mailer_editable = Lob::SelfMailerEditable.new({to: 'to_example', inside: 'inside_example', outside: 'outside_example'}) # SelfMailerEditable | +self_mailer_editable = Lob::SelfMailerEditable.new({to: TODO, inside: 'inside_example', outside: 'outside_example', use_type: Lob::SfmUseType::MARKETING}) # SelfMailerEditable | opts = { idempotency_key: 'idempotency_key_example' # String | A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). } @@ -96,7 +96,7 @@ Completely removes a self mailer from production. This can only be done if the s ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -166,7 +166,7 @@ Retrieves the details of an existing self_mailer. You need only supply the uniqu ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -236,7 +236,7 @@ Returns a list of your self_mailers. The self_mailers are returned sorted by cre ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -256,7 +256,7 @@ opts = { scheduled: true, # Boolean | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` send_date: { key: 'inner_example'}, # Hash | Filter by date sent. mail_type: Lob::MailType::FIRST_CLASS, # MailType | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. - sort_by: Lob::SortBy3.new # SortBy3 | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + sort_by: Lob::SortBy4.new # SortBy4 | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. } begin @@ -300,7 +300,7 @@ end | **scheduled** | **Boolean** | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` | [optional] | | **send_date** | [**Hash<String, String>**](String.md) | Filter by date sent. | [optional] | | **mail_type** | [**MailType**](.md) | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. | [optional][default to 'usps_first_class'] | -| **sort_by** | [**SortBy3**](.md) | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. | [optional] | +| **sort_by** | [**SortBy4**](.md) | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. | [optional] | ### Return type diff --git a/docs/SfmUseType.md b/docs/SfmUseType.md new file mode 100755 index 0000000..ffad94d --- /dev/null +++ b/docs/SfmUseType.md @@ -0,0 +1,15 @@ +# Lob::SfmUseType + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | + +## Example + +```ruby +require 'lob' + +instance = Lob::SfmUseType.new() +``` + diff --git a/docs/SnapPack.md b/docs/SnapPack.md new file mode 100755 index 0000000..6f8baf6 --- /dev/null +++ b/docs/SnapPack.md @@ -0,0 +1,50 @@ +# Lob::SnapPack + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **id** | **String** | Unique identifier prefixed with `ord_`. | | +| **to** | [**AnyType**](.md) | | | +| **from** | [**AnyType**](.md) | | [optional] | +| **size** | [**SnapPackSize**](SnapPackSize.md) | | [optional][default to '6x18_bifold'] | +| **description** | **String** | An internal description that identifies this resource. Must be no longer than 255 characters. | [optional] | +| **metadata** | **Hash<String, String>** | Use metadata to store custom information for tagging and labeling back to your internal systems. Must be an object with up to 20 key-value pairs. Keys must be at most 40 characters and values must be at most 500 characters. Neither can contain the characters `\"` and `\\`. i.e. '{\"customer_id\" : \"NEWYORK2015\"}' Nested objects are not supported. See [Metadata](#section/Metadata) for more information. | [optional] | +| **mail_type** | [**MailType**](MailType.md) | | [optional][default to 'usps_first_class'] | +| **merge_variables** | **Object** | You can input a merge variable payload object to your template to render dynamic content. For example, if you have a template like: `{{variable_name}}`, pass in `{\"variable_name\": \"Harry\"}` to render `Harry`. `merge_variables` must be an object. Any type of value is accepted as long as the object is valid JSON; you can use `strings`, `numbers`, `booleans`, `arrays`, `objects`, or `null`. The max length of the object is 25,000 characters. If you call `JSON.stringify` on your object, it can be no longer than 25,000 characters. Your variable names cannot contain any whitespace or any of the following special characters: `!`, `\"`, `#`, `%`, `&`, `'`, `(`, `)`, `*`, `+`, `,`, `/`, `;`, `<`, `=`, `>`, `@`, `[`, `\\`, `]`, `^`, `` ` ``, `{`, `|`, `}`, `~`. More instructions can be found in [our guide to using html and merge variables](https://lob.com/resources/guides/general/using-html-and-merge-variables). Depending on your [Merge Variable strictness](https://dashboard.lob.com/#/settings/account) setting, if you define variables in your HTML but do not pass them here, you will either receive an error or the variable will render as an empty string. | [optional] | +| **send_date** | **Time** | A timestamp in ISO 8601 format which specifies a date after the current time and up to 180 days in the future to send the letter off for production. Setting a send date overrides the default [cancellation window](#section/Cancellation-Windows) applied to the mailpiece. Until the `send_date` has passed, the mailpiece can be canceled. If a date in the format `2017-11-01` is passed, it will evaluate to midnight UTC of that date (`2017-11-01T00:00:00.000Z`). If a datetime is passed, that exact time will be used. A `send_date` passed with no time zone will default to UTC, while a `send_date` passed with a time zone will be converted to UTC. | [optional] | +| **outside_template_id** | **String** | The unique ID of the HTML template used for the outside of the snap pack. | [optional] | +| **inside_template_id** | **String** | The unique ID of the HTML template used for the inside of the snap pack. | [optional] | +| **outside_template_version_id** | **String** | The unique ID of the specific version of the HTML template used for the outside of the snap pack. | [optional] | +| **inside_template_version_id** | **String** | The unique ID of the specific version of the HTML template used for the inside of the snap pack. | [optional] | +| **object** | **String** | Value is resource type. | [optional][default to 'snap_pack'] | +| **tracking_events** | [**Array<TrackingEventCertified>**](TrackingEventCertified.md) | An array of certified tracking events ordered by ascending `time`. Not populated in test mode. | [optional] | +| **url** | **String** | A [signed link](#section/Asset-URLs) served over HTTPS. The link returned will expire in 30 days to prevent mis-sharing. Each time a GET request is initiated, a new signed URL will be generated. | | +| **use_type** | [**SnpUseType**](SnpUseType.md) | | | + +## Example + +```ruby +require 'lob' + +instance = Lob::SnapPack.new( + id: null, + to: null, + from: null, + size: null, + description: null, + metadata: null, + mail_type: null, + merge_variables: null, + send_date: null, + outside_template_id: null, + inside_template_id: null, + outside_template_version_id: null, + inside_template_version_id: null, + object: null, + tracking_events: null, + url: null, + use_type: null +) +``` + diff --git a/docs/SnapPackDeletion.md b/docs/SnapPackDeletion.md new file mode 100755 index 0000000..6ce2278 --- /dev/null +++ b/docs/SnapPackDeletion.md @@ -0,0 +1,22 @@ +# Lob::SnapPackDeletion + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **id** | **String** | Unique identifier prefixed with `ord_`. | [optional] | +| **deleted** | **Boolean** | Only returned if the resource has been successfully deleted. | [optional] | +| **object** | **String** | Value is type of resource. | [optional][default to 'snap_pack_deleted'] | + +## Example + +```ruby +require 'lob' + +instance = Lob::SnapPackDeletion.new( + id: null, + deleted: null, + object: null +) +``` + diff --git a/docs/SnapPackEditable.md b/docs/SnapPackEditable.md new file mode 100755 index 0000000..6227db8 --- /dev/null +++ b/docs/SnapPackEditable.md @@ -0,0 +1,40 @@ +# Lob::SnapPackEditable + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **to** | [**AnyType**](.md) | Must either be an address ID or an inline object with correct address parameters. | | +| **from** | [**AnyType**](.md) | Must either be an address ID or an inline object with correct address parameters. | [optional] | +| **size** | [**SnapPackSize**](SnapPackSize.md) | | [optional][default to '6x18_bifold'] | +| **description** | **String** | An internal description that identifies this resource. Must be no longer than 255 characters. | [optional] | +| **metadata** | **Hash<String, String>** | Use metadata to store custom information for tagging and labeling back to your internal systems. Must be an object with up to 20 key-value pairs. Keys must be at most 40 characters and values must be at most 500 characters. Neither can contain the characters `\"` and `\\`. i.e. '{\"customer_id\" : \"NEWYORK2015\"}' Nested objects are not supported. See [Metadata](#section/Metadata) for more information. | [optional] | +| **mail_type** | [**MailType**](MailType.md) | | [optional][default to 'usps_first_class'] | +| **merge_variables** | **Object** | You can input a merge variable payload object to your template to render dynamic content. For example, if you have a template like: `{{variable_name}}`, pass in `{\"variable_name\": \"Harry\"}` to render `Harry`. `merge_variables` must be an object. Any type of value is accepted as long as the object is valid JSON; you can use `strings`, `numbers`, `booleans`, `arrays`, `objects`, or `null`. The max length of the object is 25,000 characters. If you call `JSON.stringify` on your object, it can be no longer than 25,000 characters. Your variable names cannot contain any whitespace or any of the following special characters: `!`, `\"`, `#`, `%`, `&`, `'`, `(`, `)`, `*`, `+`, `,`, `/`, `;`, `<`, `=`, `>`, `@`, `[`, `\\`, `]`, `^`, `` ` ``, `{`, `|`, `}`, `~`. More instructions can be found in [our guide to using html and merge variables](https://lob.com/resources/guides/general/using-html-and-merge-variables). Depending on your [Merge Variable strictness](https://dashboard.lob.com/#/settings/account) setting, if you define variables in your HTML but do not pass them here, you will either receive an error or the variable will render as an empty string. | [optional] | +| **send_date** | **Time** | A timestamp in ISO 8601 format which specifies a date after the current time and up to 180 days in the future to send the letter off for production. Setting a send date overrides the default [cancellation window](#section/Cancellation-Windows) applied to the mailpiece. Until the `send_date` has passed, the mailpiece can be canceled. If a date in the format `2017-11-01` is passed, it will evaluate to midnight UTC of that date (`2017-11-01T00:00:00.000Z`). If a datetime is passed, that exact time will be used. A `send_date` passed with no time zone will default to UTC, while a `send_date` passed with a time zone will be converted to UTC. | [optional] | +| **inside** | **String** | The artwork to use as the inside of your snap pack. | | +| **outside** | **String** | The artwork to use as the outside of your snap pack. | | +| **billing_group_id** | **String** | An optional string with the billing group ID to tag your usage with. Is used for billing purposes. Requires special activation to use. See [Billing Group API](https://lob.github.io/lob-openapi/#tag/Billing-Groups) for more information. | [optional] | +| **use_type** | [**SnpUseType**](SnpUseType.md) | | | + +## Example + +```ruby +require 'lob' + +instance = Lob::SnapPackEditable.new( + to: null, + from: null, + size: null, + description: null, + metadata: null, + mail_type: null, + merge_variables: null, + send_date: null, + inside: null, + outside: null, + billing_group_id: null, + use_type: null +) +``` + diff --git a/docs/SnapPackList.md b/docs/SnapPackList.md new file mode 100755 index 0000000..6b007de --- /dev/null +++ b/docs/SnapPackList.md @@ -0,0 +1,28 @@ +# Lob::SnapPackList + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **data** | [**Array<SnapPack>**](SnapPack.md) | list of snap packs | [optional] | +| **object** | **String** | Value is type of resource. | [optional] | +| **next_url** | **String** | url of next page of items in list. | [optional] | +| **previous_url** | **String** | url of previous page of items in list. | [optional] | +| **count** | **Integer** | number of resources in a set | [optional] | +| **total_count** | **Integer** | indicates the total number of records. Provided when the request specifies an \"include\" query parameter | [optional] | + +## Example + +```ruby +require 'lob' + +instance = Lob::SnapPackList.new( + data: null, + object: null, + next_url: null, + previous_url: null, + count: null, + total_count: null +) +``` + diff --git a/docs/SnapPackSize.md b/docs/SnapPackSize.md new file mode 100755 index 0000000..2f9fd21 --- /dev/null +++ b/docs/SnapPackSize.md @@ -0,0 +1,15 @@ +# Lob::SnapPackSize + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | + +## Example + +```ruby +require 'lob' + +instance = Lob::SnapPackSize.new() +``` + diff --git a/docs/SnapPacksApi.md b/docs/SnapPacksApi.md new file mode 100755 index 0000000..947f641 --- /dev/null +++ b/docs/SnapPacksApi.md @@ -0,0 +1,317 @@ +# Lob::SnapPacksApi + +All URIs are relative to *https://api.lob.com/v1* + +| Method | HTTP request | Description | +| ------ | ------------ | ----------- | +| [**snap_pack_create**](SnapPacksApi.md#snap_pack_create) | **POST** /snap_packs | create | +| [**snap_pack_delete**](SnapPacksApi.md#snap_pack_delete) | **DELETE** /snap_packs/{snp_id} | delete | +| [**snap_pack_retrieve**](SnapPacksApi.md#snap_pack_retrieve) | **GET** /snap_packs/{snp_id} | get | +| [**snap_packs_list**](SnapPacksApi.md#snap_packs_list) | **GET** /snap_packs | list | + + +## snap_pack_create + +> snap_pack_create(snap_pack_editable, opts) + +create + +Creates a new snap_pack given information + +### Examples + +```ruby +require 'time' +require 'lob' +# setup authorization +Lob.configure do |config| + # Configure HTTP basic authorization: basicAuth + config.username = 'YOUR USERNAME' + config.password = 'YOUR PASSWORD' +end + +api_instance = Lob::SnapPacksApi.new +snap_pack_editable = Lob::SnapPackEditable.new({to: TODO, inside: 'inside_example', outside: 'outside_example', use_type: Lob::SnpUseType::MARKETING}) # SnapPackEditable | +opts = { + idempotency_key: 'idempotency_key_example' # String | A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). +} + +begin + # create + result = api_instance.create(snap_pack_editable, opts) + p result +rescue Lob::ApiError => e + puts "Error when calling SnapPacksApi->create: #{e}" +end +``` + +#### Using the snap_pack_create_with_http_info variant + +This returns an Array which contains the response data, status code and headers. + +> , Integer, Hash)> snap_pack_create_with_http_info(snap_pack_editable, opts) + +```ruby +begin + # create + data, status_code, headers = api_instance.snap_pack_create_with_http_info(snap_pack_editable, opts) + p status_code # => 2xx + p headers # => { ... } + p data # => +rescue Lob::ApiError => e + puts "Error when calling SnapPacksApi->snap_pack_create_with_http_info: #{e}" +end +``` + +### Parameters + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **snap_pack_editable** | [**SnapPackEditable**](SnapPackEditable.md) | | | +| **idempotency_key** | **String** | A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). | [optional] | + +### Return type + +[**SnapPack**](SnapPack.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + +- **Content-Type**: application/json, application/x-www-form-urlencoded, multipart/form-data +- **Accept**: application/json + + +## snap_pack_delete + +> snap_pack_delete(snp_id) + +delete + +Completely removes a snap pack from production. This can only be done if the snap pack's `send_date` has not yet passed. + +### Examples + +```ruby +require 'time' +require 'lob' +# setup authorization +Lob.configure do |config| + # Configure HTTP basic authorization: basicAuth + config.username = 'YOUR USERNAME' + config.password = 'YOUR PASSWORD' +end + +api_instance = Lob::SnapPacksApi.new +snp_id = 'snp_id_example' # String | id of the snap_pack + +begin + # delete + result = api_instance.delete(snp_id) + p result +rescue Lob::ApiError => e + puts "Error when calling SnapPacksApi->delete: #{e}" +end +``` + +#### Using the snap_pack_delete_with_http_info variant + +This returns an Array which contains the response data, status code and headers. + +> , Integer, Hash)> snap_pack_delete_with_http_info(snp_id) + +```ruby +begin + # delete + data, status_code, headers = api_instance.snap_pack_delete_with_http_info(snp_id) + p status_code # => 2xx + p headers # => { ... } + p data # => +rescue Lob::ApiError => e + puts "Error when calling SnapPacksApi->snap_pack_delete_with_http_info: #{e}" +end +``` + +### Parameters + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **snp_id** | **String** | id of the snap_pack | | + +### Return type + +[**SnapPackDeletion**](SnapPackDeletion.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## snap_pack_retrieve + +> snap_pack_retrieve(snp_id) + +get + +Retrieves the details of an existing snap_pack. You need only supply the unique snap_pack identifier that was returned upon snap_pack creation. + +### Examples + +```ruby +require 'time' +require 'lob' +# setup authorization +Lob.configure do |config| + # Configure HTTP basic authorization: basicAuth + config.username = 'YOUR USERNAME' + config.password = 'YOUR PASSWORD' +end + +api_instance = Lob::SnapPacksApi.new +snp_id = 'snp_id_example' # String | id of the snap_pack + +begin + # get + result = api_instance.get(snp_id) + p result +rescue Lob::ApiError => e + puts "Error when calling SnapPacksApi->get: #{e}" +end +``` + +#### Using the snap_pack_retrieve_with_http_info variant + +This returns an Array which contains the response data, status code and headers. + +> , Integer, Hash)> snap_pack_retrieve_with_http_info(snp_id) + +```ruby +begin + # get + data, status_code, headers = api_instance.snap_pack_retrieve_with_http_info(snp_id) + p status_code # => 2xx + p headers # => { ... } + p data # => +rescue Lob::ApiError => e + puts "Error when calling SnapPacksApi->snap_pack_retrieve_with_http_info: #{e}" +end +``` + +### Parameters + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **snp_id** | **String** | id of the snap_pack | | + +### Return type + +[**SnapPack**](SnapPack.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + +## snap_packs_list + +> snap_packs_list(opts) + +list + +Returns a list of your Snap Packs. The snap packs are returned sorted by creation date, with the most recently created snap packs appearing first. + +### Examples + +```ruby +require 'time' +require 'lob' +# setup authorization +Lob.configure do |config| + # Configure HTTP basic authorization: basicAuth + config.username = 'YOUR USERNAME' + config.password = 'YOUR PASSWORD' +end + +api_instance = Lob::SnapPacksApi.new +opts = { + limit: 56, # Integer | How many results to return. + before: 'before_example', # String | A reference to a list entry used for paginating to the previous set of entries. This field is pre-populated in the `previous_url` field in the return response. + after: 'after_example', # String | A reference to a list entry used for paginating to the next set of entries. This field is pre-populated in the `next_url` field in the return response. + include: ['inner_example'], # Array | Request that the response include the total count by specifying `include[]=total_count`. + date_created: { key: Time.now}, # Hash | Filter by date created. + metadata: { key: 'inner_example'}, # Hash | Filter by metadata key-value pair`. + size: [Lob::SnapPackSize::N6X18_BIFOLD], # Array | The Snap Pack sizes to be returned. + scheduled: true, # Boolean | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` + send_date: { key: 'inner_example'}, # Hash | Filter by date sent. + mail_type: Lob::MailType::FIRST_CLASS, # MailType | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. + sort_by: Lob::SortBy4.new # SortBy4 | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. +} + +begin + # list + result = api_instance.list(opts) + p result +rescue Lob::ApiError => e + puts "Error when calling SnapPacksApi->list: #{e}" +end +``` + +#### Using the snap_packs_list_with_http_info variant + +This returns an Array which contains the response data, status code and headers. + +> , Integer, Hash)> snap_packs_list_with_http_info(opts) + +```ruby +begin + # list + data, status_code, headers = api_instance.snap_packs_list_with_http_info(opts) + p status_code # => 2xx + p headers # => { ... } + p data # => +rescue Lob::ApiError => e + puts "Error when calling SnapPacksApi->snap_packs_list_with_http_info: #{e}" +end +``` + +### Parameters + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **limit** | **Integer** | How many results to return. | [optional][default to 10] | +| **before** | **String** | A reference to a list entry used for paginating to the previous set of entries. This field is pre-populated in the `previous_url` field in the return response. | [optional] | +| **after** | **String** | A reference to a list entry used for paginating to the next set of entries. This field is pre-populated in the `next_url` field in the return response. | [optional] | +| **include** | [**Array<String>**](String.md) | Request that the response include the total count by specifying `include[]=total_count`. | [optional] | +| **date_created** | [**Hash<String, Time>**](Time.md) | Filter by date created. | [optional] | +| **metadata** | [**Hash<String, String>**](String.md) | Filter by metadata key-value pair`. | [optional] | +| **size** | [**Array<SnapPackSize>**](SnapPackSize.md) | The Snap Pack sizes to be returned. | [optional] | +| **scheduled** | **Boolean** | * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` | [optional] | +| **send_date** | [**Hash<String, String>**](String.md) | Filter by date sent. | [optional] | +| **mail_type** | [**MailType**](.md) | A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. | [optional][default to 'usps_first_class'] | +| **sort_by** | [**SortBy4**](.md) | Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. | [optional] | + +### Return type + +[**SnapPackList**](SnapPackList.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + diff --git a/docs/SnpUseType.md b/docs/SnpUseType.md new file mode 100755 index 0000000..1da618a --- /dev/null +++ b/docs/SnpUseType.md @@ -0,0 +1,15 @@ +# Lob::SnpUseType + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | + +## Example + +```ruby +require 'lob' + +instance = Lob::SnpUseType.new() +``` + diff --git a/docs/SortBy.md b/docs/SortBy.md index 1cde339..b5eaf98 100755 --- a/docs/SortBy.md +++ b/docs/SortBy.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SortBy.new( date_created: null, diff --git a/docs/SortBy1.md b/docs/SortBy1.md index 7b8d524..1a52cc8 100755 --- a/docs/SortBy1.md +++ b/docs/SortBy1.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SortBy1.new( date_created: null, diff --git a/docs/SortBy2.md b/docs/SortBy2.md index 4c9542b..a9ff4c1 100755 --- a/docs/SortBy2.md +++ b/docs/SortBy2.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SortBy2.new( date_created: null, diff --git a/docs/SortBy3.md b/docs/SortBy3.md index 4a62368..a6482a3 100755 --- a/docs/SortBy3.md +++ b/docs/SortBy3.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SortBy3.new( date_created: null, diff --git a/docs/SortBy4.md b/docs/SortBy4.md new file mode 100755 index 0000000..0dbd290 --- /dev/null +++ b/docs/SortBy4.md @@ -0,0 +1,20 @@ +# Lob::SortBy4 + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **date_created** | **String** | | [optional] | +| **send_date** | **String** | | [optional] | + +## Example + +```ruby +require 'lob' + +instance = Lob::SortBy4.new( + date_created: null, + send_date: null +) +``` + diff --git a/docs/SortByDateModified.md b/docs/SortByDateModified.md index 9c1711f..da1fb04 100755 --- a/docs/SortByDateModified.md +++ b/docs/SortByDateModified.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::SortByDateModified.new( date_created: null, diff --git a/docs/Suggestions.md b/docs/Suggestions.md index 8322fe2..64814b9 100755 --- a/docs/Suggestions.md +++ b/docs/Suggestions.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Suggestions.new( primary_line: null, diff --git a/docs/Template.md b/docs/Template.md index 8686dc7..9a49392 100755 --- a/docs/Template.md +++ b/docs/Template.md @@ -17,7 +17,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Template.new( description: null, diff --git a/docs/TemplateDeletion.md b/docs/TemplateDeletion.md index 057be11..a78ed67 100755 --- a/docs/TemplateDeletion.md +++ b/docs/TemplateDeletion.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TemplateDeletion.new( id: null, diff --git a/docs/TemplateList.md b/docs/TemplateList.md index e9827ca..bb017ae 100755 --- a/docs/TemplateList.md +++ b/docs/TemplateList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TemplateList.new( data: null, diff --git a/docs/TemplateUpdate.md b/docs/TemplateUpdate.md index a793ceb..d0891cc 100755 --- a/docs/TemplateUpdate.md +++ b/docs/TemplateUpdate.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TemplateUpdate.new( description: null, diff --git a/docs/TemplateVersion.md b/docs/TemplateVersion.md index 3c87929..d3e6a59 100755 --- a/docs/TemplateVersion.md +++ b/docs/TemplateVersion.md @@ -18,7 +18,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TemplateVersion.new( id: null, diff --git a/docs/TemplateVersionDeletion.md b/docs/TemplateVersionDeletion.md index 3ba3a08..538d69e 100755 --- a/docs/TemplateVersionDeletion.md +++ b/docs/TemplateVersionDeletion.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TemplateVersionDeletion.new( id: null, diff --git a/docs/TemplateVersionList.md b/docs/TemplateVersionList.md index aac529c..a2db2b8 100755 --- a/docs/TemplateVersionList.md +++ b/docs/TemplateVersionList.md @@ -14,7 +14,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TemplateVersionList.new( data: null, diff --git a/docs/TemplateVersionUpdatable.md b/docs/TemplateVersionUpdatable.md index 52a22a5..ba20172 100755 --- a/docs/TemplateVersionUpdatable.md +++ b/docs/TemplateVersionUpdatable.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TemplateVersionUpdatable.new( description: null, diff --git a/docs/TemplateVersionWritable.md b/docs/TemplateVersionWritable.md index 1f07beb..8e20e6f 100755 --- a/docs/TemplateVersionWritable.md +++ b/docs/TemplateVersionWritable.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TemplateVersionWritable.new( description: null, diff --git a/docs/TemplateVersionsApi.md b/docs/TemplateVersionsApi.md index 3e4ebc7..65ca155 100755 --- a/docs/TemplateVersionsApi.md +++ b/docs/TemplateVersionsApi.md @@ -23,7 +23,7 @@ Creates a new template version attached to the specified template. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -95,7 +95,7 @@ Permanently deletes a template version. A template's `published_version` can not ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -167,7 +167,7 @@ Retrieves the template version with the given template and version ids. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -239,7 +239,7 @@ Updates the template version with the given template and version ids. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -313,7 +313,7 @@ Returns a list of template versions for the given template ID. The template vers ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/TemplateWritable.md b/docs/TemplateWritable.md index 7191dfe..b61ce86 100755 --- a/docs/TemplateWritable.md +++ b/docs/TemplateWritable.md @@ -12,7 +12,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TemplateWritable.new( description: null, diff --git a/docs/TemplatesApi.md b/docs/TemplatesApi.md index 4190083..90dfe06 100755 --- a/docs/TemplatesApi.md +++ b/docs/TemplatesApi.md @@ -23,7 +23,7 @@ Creates a new template for use with the Print & Mail API. In Live mode, you can ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -93,7 +93,7 @@ Permanently deletes a template. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -163,7 +163,7 @@ Retrieves the details of an existing template. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -233,7 +233,7 @@ Updates the description and/or published version of the template with the given ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -305,7 +305,7 @@ Returns a list of your templates. The templates are returned sorted by creation ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/Thumbnail.md b/docs/Thumbnail.md index 0ce1041..ebac997 100755 --- a/docs/Thumbnail.md +++ b/docs/Thumbnail.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Thumbnail.new( small: null, diff --git a/docs/TrackingEventCertified.md b/docs/TrackingEventCertified.md index aaba4e5..3328a54 100755 --- a/docs/TrackingEventCertified.md +++ b/docs/TrackingEventCertified.md @@ -17,7 +17,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TrackingEventCertified.new( type: null, diff --git a/docs/TrackingEventDetails.md b/docs/TrackingEventDetails.md index 61da77c..c80ea3e 100755 --- a/docs/TrackingEventDetails.md +++ b/docs/TrackingEventDetails.md @@ -12,7 +12,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TrackingEventDetails.new( event: null, diff --git a/docs/TrackingEventNormal.md b/docs/TrackingEventNormal.md index 2504b7a..79bad52 100755 --- a/docs/TrackingEventNormal.md +++ b/docs/TrackingEventNormal.md @@ -5,7 +5,7 @@ | Name | Type | Description | Notes | | ---- | ---- | ----------- | ----- | | **type** | **String** | non-Certified postcards, self mailers, letters, and checks | | -| **name** | **String** | Name of tracking event (for normal postcards, self mailers, letters, and checks): * `In Transit` - The mailpiece is being processed at the entry/origin facility. * `In Local Area` - The mailpiece is being processed at the destination facility. * `Processed for Delivery` - The mailpiece has been greenlit for delivery at the recipient's nearest postal facility. The mailpiece should reach the mailbox within 1 business day of this tracking event. * `Re-Routed` - The mailpiece is re-routed due to recipient change of address, address errors, or USPS relabeling of barcode/ID tag area. * `Returned to Sender` - The mailpiece is being returned to sender due to barcode, ID tag area, or address errors. * `Mailed` - The mailpiece has been handed off to and accepted by USPS and is en route. [More about Mailed.](https://support.lob.com/hc/en-us/articles/360001724400-What-does-a-Mailed-tracking-event-mean-) Note this data is only available in Enterprise editions of Lob. [Contact Sales](https://lob.com/support/contact#contact) if you want access to this feature. [More about tracking](https://support.lob.com/hc/en-us/articles/115000097404-Can-I-track-my-mail-) | | +| **name** | **String** | Name of tracking event (for normal postcards, self mailers, letters, and checks): * `Mailed` - The mailpiece has been handed off to and accepted by USPS and is en route. <a href=\"https://help.lob.com/print-and-mail/getting-data-and-results/tracking-your-mail#mailed-tracking-events-4\" target=\"_blank\">More about Mailed.</a> Note this data is only available in Enterprise editions of Lob. <a href=\"https://lob.com/support/contact#contact\" target=\"_blank\">Contact Sales</a> if you want access to this feature. * `In Transit` - The mailpiece is being processed at the entry/origin facility. * `In Local Area` - The mailpiece is being processed at the destination facility. * `Processed for Delivery` - The mailpiece has been greenlit for delivery at the recipient's nearest postal facility. The mailpiece should reach the mailbox within 1 business day of this tracking event. * `Delivered` - The mail piece has been delivered to the recipients address. The final scan is generated when the mail carrier's GPS unit leaves the delivery area. * `Re-Routed` - The mailpiece is re-routed due to recipient change of address, address errors, or USPS relabeling of barcode/ID tag area. * `Returned to Sender` - The mailpiece is being returned to sender due to barcode, ID tag area, or address errors. * `International Exit` - The mail piece has been processed to ship to a destination abroad. This is typically the last scan a US-originated international mail piece will receive from the USPS. [More about tracking](https://support.lob.com/hc/en-us/articles/115000097404-Can-I-track-my-mail-) | | | **details** | **Object** | Will be `null` for `type=normal` events | [optional] | | **location** | **String** | The zip code in which the scan event occurred. Null for `Mailed` events. | [optional] | | **id** | **String** | Unique identifier prefixed with `evnt_`. | [optional] | @@ -17,7 +17,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::TrackingEventNormal.new( type: null, diff --git a/docs/Upload.md b/docs/Upload.md index af266b0..8462a7b 100755 --- a/docs/Upload.md +++ b/docs/Upload.md @@ -6,8 +6,8 @@ | ---- | ---- | ----------- | ----- | | **id** | **String** | Unique identifier prefixed with `upl_`. | | | **account_id** | **String** | Account ID that made the request | | -| **campaign_id** | **String** | Unique identifier prefixed with `cmp_`. | | | **mode** | **String** | The environment in which the mailpieces were created. Today, will only be `live`. | | +| **campaign_id** | **String** | Campaign ID associated with the upload | | | **failures_url** | **String** | Url where your campaign mailpiece failures can be retrieved | [optional] | | **original_filename** | **String** | Filename of the upload | [optional] | | **state** | [**UploadState**](UploadState.md) | | [default to 'Draft'] | @@ -17,18 +17,21 @@ | **bytes_processed** | **Integer** | Number of bytes processed in your CSV | | | **date_created** | **Time** | A timestamp in ISO 8601 format of the date the upload was created | | | **date_modified** | **Time** | A timestamp in ISO 8601 format of the date the upload was last modified | | -| **deleted** | **Boolean** | Only returned if the resource has been successfully deleted. | [optional] | +| **required_address_column_mapping** | [**RequiredAddressColumnMapping**](RequiredAddressColumnMapping.md) | | | +| **optional_address_column_mapping** | [**OptionalAddressColumnMapping**](OptionalAddressColumnMapping.md) | | | +| **metadata** | [**UploadsMetadata**](UploadsMetadata.md) | | | +| **merge_variable_column_mapping** | **Object** | The mapping of column headers in your file to the merge variables present in your creative. See our <a href=\"https://help.lob.com/print-and-mail/building-a-mail-strategy/campaign-or-triggered-sends/campaign-audience-guide#step-3-map-merge-variable-data-if-applicable-7\" target=\"_blank\">Campaign Audience Guide</a> for additional details. <br />If a merge variable has the same \"name\" as a \"key\" in the `requiredAddressColumnMapping` or `optionalAddressColumnMapping` objects, then they **CANNOT** have a different value in this object. If a different value is provided, then when the campaign is processing it will get overwritten with the mapped value present in the `requiredAddressColumnMapping` or `optionalAddressColumnMapping` objects. | | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Upload.new( id: null, - account_id: null, - campaign_id: null, + account_id: fa9ea650fc7b31a89f92, mode: null, + campaign_id: null, failures_url: null, original_filename: null, state: null, @@ -38,7 +41,10 @@ instance = Lob::Upload.new( bytes_processed: null, date_created: null, date_modified: null, - deleted: null + required_address_column_mapping: null, + optional_address_column_mapping: null, + metadata: null, + merge_variable_column_mapping: {"name":"recipient_name","gift_code":"code"} ) ``` diff --git a/docs/UploadCreateExport.md b/docs/UploadCreateExport.md index 54204d7..35592fb 100755 --- a/docs/UploadCreateExport.md +++ b/docs/UploadCreateExport.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UploadCreateExport.new( message: null, diff --git a/docs/UploadFile.md b/docs/UploadFile.md index 61c232e..a985165 100755 --- a/docs/UploadFile.md +++ b/docs/UploadFile.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UploadFile.new( message: null, diff --git a/docs/UploadState.md b/docs/UploadState.md index 28a489d..6629cb0 100755 --- a/docs/UploadState.md +++ b/docs/UploadState.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UploadState.new() ``` diff --git a/docs/UploadUpdatable.md b/docs/UploadUpdatable.md index fdc525c..2bdbddb 100755 --- a/docs/UploadUpdatable.md +++ b/docs/UploadUpdatable.md @@ -4,17 +4,23 @@ | Name | Type | Description | Notes | | ---- | ---- | ----------- | ----- | -| **state** | [**UploadState**](UploadState.md) | | [optional][default to 'Draft'] | | **original_filename** | **String** | Original filename provided when the upload is created. | [optional] | +| **required_address_column_mapping** | [**RequiredAddressColumnMapping**](RequiredAddressColumnMapping.md) | | [optional] | +| **optional_address_column_mapping** | [**OptionalAddressColumnMapping**](OptionalAddressColumnMapping.md) | | [optional] | +| **metadata** | [**UploadsMetadata**](UploadsMetadata.md) | | [optional] | +| **merge_variable_column_mapping** | **Object** | The mapping of column headers in your file to the merge variables present in your creative. See our <a href=\"https://help.lob.com/print-and-mail/building-a-mail-strategy/campaign-or-triggered-sends/campaign-audience-guide#step-3-map-merge-variable-data-if-applicable-7\" target=\"_blank\">Campaign Audience Guide</a> for additional details. <br />If a merge variable has the same \"name\" as a \"key\" in the `requiredAddressColumnMapping` or `optionalAddressColumnMapping` objects, then they **CANNOT** have a different value in this object. If a different value is provided, then when the campaign is processing it will get overwritten with the mapped value present in the `requiredAddressColumnMapping` or `optionalAddressColumnMapping` objects. | [optional] | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UploadUpdatable.new( - state: null, - original_filename: null + original_filename: null, + required_address_column_mapping: null, + optional_address_column_mapping: null, + metadata: null, + merge_variable_column_mapping: {"name":"recipient_name","gift_code":"code"} ) ``` diff --git a/docs/UploadWritable.md b/docs/UploadWritable.md index 39dd20c..21decfe 100755 --- a/docs/UploadWritable.md +++ b/docs/UploadWritable.md @@ -4,15 +4,23 @@ | Name | Type | Description | Notes | | ---- | ---- | ----------- | ----- | -| **campaign_id** | **String** | Unique identifier prefixed with `cmp_`. | | +| **campaign_id** | **String** | | | +| **required_address_column_mapping** | [**RequiredAddressColumnMapping**](RequiredAddressColumnMapping.md) | | [optional] | +| **optional_address_column_mapping** | [**OptionalAddressColumnMapping**](OptionalAddressColumnMapping.md) | | [optional] | +| **metadata** | [**UploadsMetadata**](UploadsMetadata.md) | | [optional] | +| **merge_variable_column_mapping** | **Object** | The mapping of column headers in your file to the merge variables present in your creative. See our <a href=\"https://help.lob.com/print-and-mail/building-a-mail-strategy/campaign-or-triggered-sends/campaign-audience-guide#step-3-map-merge-variable-data-if-applicable-7\" target=\"_blank\">Campaign Audience Guide</a> for additional details. <br />If a merge variable has the same \"name\" as a \"key\" in the `requiredAddressColumnMapping` or `optionalAddressColumnMapping` objects, then they **CANNOT** have a different value in this object. If a different value is provided, then when the campaign is processing it will get overwritten with the mapped value present in the `requiredAddressColumnMapping` or `optionalAddressColumnMapping` objects. | [optional] | ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UploadWritable.new( - campaign_id: null + campaign_id: null, + required_address_column_mapping: null, + optional_address_column_mapping: null, + metadata: null, + merge_variable_column_mapping: {"name":"recipient_name","gift_code":"code"} ) ``` diff --git a/docs/UploadsApi.md b/docs/UploadsApi.md index c736333..3c12a32 100755 --- a/docs/UploadsApi.md +++ b/docs/UploadsApi.md @@ -5,13 +5,13 @@ All URIs are relative to *https://api.lob.com/v1* | Method | HTTP request | Description | | ------ | ------------ | ----------- | | [**export_retrieve**](UploadsApi.md#export_retrieve) | **GET** /uploads/{upl_id}/exports/{ex_id} | get_export | -| [**upload_create**](UploadsApi.md#upload_create) | **POST** /uploads | create_upload | -| [**upload_delete**](UploadsApi.md#upload_delete) | **DELETE** /uploads/{upl_id} | delete_upload | +| [**get**](UploadsApi.md#get) | **GET** /uploads/{upl_id} | get | +| [**upload_create**](UploadsApi.md#upload_create) | **POST** /uploads | create | +| [**upload_delete**](UploadsApi.md#upload_delete) | **DELETE** /uploads/{upl_id} | delete | | [**upload_export_create**](UploadsApi.md#upload_export_create) | **POST** /uploads/{upl_id}/exports | create_export | | [**upload_file_create**](UploadsApi.md#upload_file_create) | **POST** /uploads/{upl_id}/file | upload_file | -| [**upload_retrieve**](UploadsApi.md#upload_retrieve) | **GET** /uploads/{upl_id} | get_upload | -| [**upload_update**](UploadsApi.md#upload_update) | **PATCH** /uploads/{upl_id} | update_upload | -| [**uploads_list**](UploadsApi.md#uploads_list) | **GET** /uploads | list_upload | +| [**upload_update**](UploadsApi.md#upload_update) | **PATCH** /uploads/{upl_id} | update | +| [**uploads_list**](UploadsApi.md#uploads_list) | **GET** /uploads | list | ## export_retrieve @@ -26,7 +26,7 @@ Retrieves the details of an existing export. You need only supply the unique exp ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -86,11 +86,81 @@ end - **Accept**: application/json +## get + +> get(upl_id) + +get + +Retrieves the details of an existing upload. You need only supply the unique upload identifier that was returned upon upload creation. + +### Examples + +```ruby +require 'time' +require 'lob' +# setup authorization +Lob.configure do |config| + # Configure HTTP basic authorization: basicAuth + config.username = 'YOUR USERNAME' + config.password = 'YOUR PASSWORD' +end + +api_instance = Lob::UploadsApi.new +upl_id = 'upl_id_example' # String | id of the upload + +begin + # get + result = api_instance.get(upl_id) + p result +rescue Lob::ApiError => e + puts "Error when calling UploadsApi->get: #{e}" +end +``` + +#### Using the get_with_http_info variant + +This returns an Array which contains the response data, status code and headers. + +> , Integer, Hash)> get_with_http_info(upl_id) + +```ruby +begin + # get + data, status_code, headers = api_instance.get_with_http_info(upl_id) + p status_code # => 2xx + p headers # => { ... } + p data # => +rescue Lob::ApiError => e + puts "Error when calling UploadsApi->get_with_http_info: #{e}" +end +``` + +### Parameters + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **upl_id** | **String** | id of the upload | | + +### Return type + +[**Upload**](Upload.md) + +### Authorization + +[basicAuth](../README.md#basicAuth) + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + + ## upload_create > upload_create(upload_writable) -create_upload +create Creates a new upload with the provided properties. @@ -98,7 +168,7 @@ Creates a new upload with the provided properties. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -110,11 +180,11 @@ api_instance = Lob::UploadsApi.new upload_writable = Lob::UploadWritable.new({campaign_id: 'campaign_id_example'}) # UploadWritable | begin - # create_upload - result = api_instance.create_upload(upload_writable) + # create + result = api_instance.create(upload_writable) p result rescue Lob::ApiError => e - puts "Error when calling UploadsApi->create_upload: #{e}" + puts "Error when calling UploadsApi->create: #{e}" end ``` @@ -126,7 +196,7 @@ This returns an Array which contains the response data, status code and headers. ```ruby begin - # create_upload + # create data, status_code, headers = api_instance.upload_create_with_http_info(upload_writable) p status_code # => 2xx p headers # => { ... } @@ -160,7 +230,7 @@ end > upload_delete(upl_id) -delete_upload +delete Delete an existing upload. You need only supply the unique identifier that was returned upon upload creation. @@ -168,7 +238,7 @@ Delete an existing upload. You need only supply the unique identifier that was r ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -180,10 +250,10 @@ api_instance = Lob::UploadsApi.new upl_id = 'upl_id_example' # String | id of the upload begin - # delete_upload - api_instance.delete_upload(upl_id) + # delete + api_instance.delete(upl_id) rescue Lob::ApiError => e - puts "Error when calling UploadsApi->delete_upload: #{e}" + puts "Error when calling UploadsApi->delete: #{e}" end ``` @@ -195,7 +265,7 @@ This returns an Array which contains the response data (`nil` in this case), sta ```ruby begin - # delete_upload + # delete data, status_code, headers = api_instance.upload_delete_with_http_info(upl_id) p status_code # => 2xx p headers # => { ... } @@ -237,7 +307,7 @@ Campaign Exports can help you understand exactly which records in a campaign cou ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -309,7 +379,7 @@ Upload an [audience file](https://help.lob.com/best-practices/campaign-audience- ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -369,81 +439,11 @@ end - **Accept**: application/json -## upload_retrieve - -> upload_retrieve(upl_id) - -get_upload - -Retrieves the details of an existing upload. You need only supply the unique upload identifier that was returned upon upload creation. - -### Examples - -```ruby -require 'time' -require 'openapi_client' -# setup authorization -Lob.configure do |config| - # Configure HTTP basic authorization: basicAuth - config.username = 'YOUR USERNAME' - config.password = 'YOUR PASSWORD' -end - -api_instance = Lob::UploadsApi.new -upl_id = 'upl_id_example' # String | id of the upload - -begin - # get_upload - result = api_instance.get_upload(upl_id) - p result -rescue Lob::ApiError => e - puts "Error when calling UploadsApi->get_upload: #{e}" -end -``` - -#### Using the upload_retrieve_with_http_info variant - -This returns an Array which contains the response data, status code and headers. - -> , Integer, Hash)> upload_retrieve_with_http_info(upl_id) - -```ruby -begin - # get_upload - data, status_code, headers = api_instance.upload_retrieve_with_http_info(upl_id) - p status_code # => 2xx - p headers # => { ... } - p data # => -rescue Lob::ApiError => e - puts "Error when calling UploadsApi->upload_retrieve_with_http_info: #{e}" -end -``` - -### Parameters - -| Name | Type | Description | Notes | -| ---- | ---- | ----------- | ----- | -| **upl_id** | **String** | id of the upload | | - -### Return type - -[**Upload**](Upload.md) - -### Authorization - -[basicAuth](../README.md#basicAuth) - -### HTTP request headers - -- **Content-Type**: Not defined -- **Accept**: application/json - - ## upload_update > upload_update(upl_id, upload_updatable) -update_upload +update Update the details of an existing upload. You need only supply the unique identifier that was returned upon upload creation. @@ -451,7 +451,7 @@ Update the details of an existing upload. You need only supply the unique identi ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -464,11 +464,11 @@ upl_id = 'upl_id_example' # String | id of the upload upload_updatable = Lob::UploadUpdatable.new # UploadUpdatable | begin - # update_upload - result = api_instance.update_upload(upl_id, upload_updatable) + # update + result = api_instance.update(upl_id, upload_updatable) p result rescue Lob::ApiError => e - puts "Error when calling UploadsApi->update_upload: #{e}" + puts "Error when calling UploadsApi->update: #{e}" end ``` @@ -480,7 +480,7 @@ This returns an Array which contains the response data, status code and headers. ```ruby begin - # update_upload + # update data, status_code, headers = api_instance.upload_update_with_http_info(upl_id, upload_updatable) p status_code # => 2xx p headers # => { ... } @@ -515,7 +515,7 @@ end > > uploads_list(opts) -list_upload +list Returns a list of your uploads. Optionally, filter uploads by campaign. @@ -523,7 +523,7 @@ Returns a list of your uploads. Optionally, filter uploads by campaign. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -537,11 +537,11 @@ opts = { } begin - # list_upload - result = api_instance.list_upload(opts) + # list + result = api_instance.list(opts) p result rescue Lob::ApiError => e - puts "Error when calling UploadsApi->list_upload: #{e}" + puts "Error when calling UploadsApi->list: #{e}" end ``` @@ -553,7 +553,7 @@ This returns an Array which contains the response data, status code and headers. ```ruby begin - # list_upload + # list data, status_code, headers = api_instance.uploads_list_with_http_info(opts) p status_code # => 2xx p headers # => { ... } diff --git a/docs/UploadsMetadata.md b/docs/UploadsMetadata.md new file mode 100755 index 0000000..cd47530 --- /dev/null +++ b/docs/UploadsMetadata.md @@ -0,0 +1,18 @@ +# Lob::UploadsMetadata + +## Properties + +| Name | Type | Description | Notes | +| ---- | ---- | ----------- | ----- | +| **columns** | **Array<String>** | The list of column names from the csv file which you want associated with each of your mailpieces | | + +## Example + +```ruby +require 'lob' + +instance = Lob::UploadsMetadata.new( + columns: null +) +``` + diff --git a/docs/UsAddress.md b/docs/UsAddress.md old mode 100644 new mode 100755 diff --git a/docs/UsAutocompletions.md b/docs/UsAutocompletions.md index 62ba48f..f9cb6a5 100755 --- a/docs/UsAutocompletions.md +++ b/docs/UsAutocompletions.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UsAutocompletions.new( id: null, diff --git a/docs/UsAutocompletionsApi.md b/docs/UsAutocompletionsApi.md index e2b64d8..41d299f 100755 --- a/docs/UsAutocompletionsApi.md +++ b/docs/UsAutocompletionsApi.md @@ -19,7 +19,7 @@ Given an address prefix consisting of a partial primary line, as well as optiona ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/UsAutocompletionsWritable.md b/docs/UsAutocompletionsWritable.md index e209b8c..6ea5440 100755 --- a/docs/UsAutocompletionsWritable.md +++ b/docs/UsAutocompletionsWritable.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UsAutocompletionsWritable.new( address_prefix: null, diff --git a/docs/UsComponents.md b/docs/UsComponents.md index 5bc83fe..3ada50b 100755 --- a/docs/UsComponents.md +++ b/docs/UsComponents.md @@ -35,36 +35,36 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UsComponents.new( - primary_number: nil, - street_predirection: nil, - street_name: nil, - street_suffix: nil, - street_postdirection: nil, - secondary_designator: nil, - secondary_number: nil, - pmb_designator: nil, - pmb_number: nil, - extra_secondary_designator: nil, - extra_secondary_number: nil, - city: nil, - state: nil, - zip_code: nil, - zip_code_plus_4: nil, - zip_code_type: nil, - delivery_point_barcode: nil, - address_type: nil, - record_type: nil, - default_building_address: nil, - county: nil, - county_fips: nil, - carrier_route: nil, - carrier_route_type: nil, - po_box_only_flag: nil, - latitude: nil, - longitude: nil + primary_number: null, + street_predirection: null, + street_name: null, + street_suffix: null, + street_postdirection: null, + secondary_designator: null, + secondary_number: null, + pmb_designator: null, + pmb_number: null, + extra_secondary_designator: null, + extra_secondary_number: null, + city: null, + state: null, + zip_code: null, + zip_code_plus_4: null, + zip_code_type: null, + delivery_point_barcode: null, + address_type: null, + record_type: null, + default_building_address: null, + county: null, + county_fips: null, + carrier_route: null, + carrier_route_type: null, + po_box_only_flag: null, + latitude: null, + longitude: null ) ``` diff --git a/docs/UsVerification.md b/docs/UsVerification.md index 754c082..a628b3f 100755 --- a/docs/UsVerification.md +++ b/docs/UsVerification.md @@ -21,7 +21,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UsVerification.new( id: null, diff --git a/docs/UsVerificationOrError.md b/docs/UsVerificationOrError.md index 6bbe9d2..07e94dd 100755 --- a/docs/UsVerificationOrError.md +++ b/docs/UsVerificationOrError.md @@ -21,7 +21,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UsVerificationOrError.new( id: null, diff --git a/docs/UsVerifications.md b/docs/UsVerifications.md index a518ccb..d2a0a71 100755 --- a/docs/UsVerifications.md +++ b/docs/UsVerifications.md @@ -10,7 +10,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UsVerifications.new( addresses: null, diff --git a/docs/UsVerificationsApi.md b/docs/UsVerificationsApi.md index b658336..2a6136c 100755 --- a/docs/UsVerificationsApi.md +++ b/docs/UsVerificationsApi.md @@ -20,7 +20,7 @@ Verify a list of US or US territory addresses with a live API key. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth @@ -94,7 +94,7 @@ Verify a US or US territory address with a live API key. ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/docs/UsVerificationsWritable.md b/docs/UsVerificationsWritable.md index 2a21e5f..dbe3202 100755 --- a/docs/UsVerificationsWritable.md +++ b/docs/UsVerificationsWritable.md @@ -17,7 +17,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::UsVerificationsWritable.new( address: null, diff --git a/docs/ValidationError.md b/docs/ValidationError.md index 949d83b..ad472d8 100755 --- a/docs/ValidationError.md +++ b/docs/ValidationError.md @@ -11,7 +11,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::ValidationError.new( loc: null, diff --git a/docs/Zip.md b/docs/Zip.md index eb2bf1f..a726b75 100755 --- a/docs/Zip.md +++ b/docs/Zip.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::Zip.new( zip_code: null, diff --git a/docs/ZipCodeType.md b/docs/ZipCodeType.md index a3cb478..c610515 100755 --- a/docs/ZipCodeType.md +++ b/docs/ZipCodeType.md @@ -8,7 +8,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::ZipCodeType.new() ``` diff --git a/docs/ZipEditable.md b/docs/ZipEditable.md index fab9628..2adf176 100755 --- a/docs/ZipEditable.md +++ b/docs/ZipEditable.md @@ -9,7 +9,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::ZipEditable.new( zip_code: null diff --git a/docs/ZipLookupCity.md b/docs/ZipLookupCity.md index 09d606b..a43f2ac 100755 --- a/docs/ZipLookupCity.md +++ b/docs/ZipLookupCity.md @@ -13,7 +13,7 @@ ## Example ```ruby -require 'openapi_client' +require 'lob' instance = Lob::ZipLookupCity.new( city: null, diff --git a/docs/ZipLookupsApi.md b/docs/ZipLookupsApi.md index e2c2e0b..dd10e89 100755 --- a/docs/ZipLookupsApi.md +++ b/docs/ZipLookupsApi.md @@ -19,7 +19,7 @@ Returns information about a ZIP code ```ruby require 'time' -require 'openapi_client' +require 'lob' # setup authorization Lob.configure do |config| # Configure HTTP basic authorization: basicAuth diff --git a/git_push.sh b/git_push.sh old mode 100644 new mode 100755 diff --git a/lib/lob.rb b/lib/lob.rb index 2e72e00..2505201 100644 --- a/lib/lob.rb +++ b/lib/lob.rb @@ -1 +1,220 @@ -require 'openapi_client' +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +# Common files +require 'lob/api_client' +require 'lob/api_error' +require 'lob/version' +require 'lob/configuration' + +# Models +require 'lob/models/address' +require 'lob/models/address_deletion' +require 'lob/models/address_domestic' +require 'lob/models/address_domestic_expanded' +require 'lob/models/address_editable' +require 'lob/models/address_list' +require 'lob/models/bank_account' +require 'lob/models/bank_account_deletion' +require 'lob/models/bank_account_list' +require 'lob/models/bank_account_verify' +require 'lob/models/bank_account_writable' +require 'lob/models/bank_type_enum' +require 'lob/models/billing_group' +require 'lob/models/billing_group_editable' +require 'lob/models/billing_group_list' +require 'lob/models/buckslip' +require 'lob/models/buckslip_deletion' +require 'lob/models/buckslip_editable' +require 'lob/models/buckslip_order' +require 'lob/models/buckslip_order_editable' +require 'lob/models/buckslip_orders_list' +require 'lob/models/buckslip_updatable' +require 'lob/models/buckslips_list' +require 'lob/models/bulk_error' +require 'lob/models/bulk_error_properties' +require 'lob/models/campaign' +require 'lob/models/campaign_creative' +require 'lob/models/campaign_deletion' +require 'lob/models/campaign_updatable' +require 'lob/models/campaign_writable' +require 'lob/models/campaigns_list' +require 'lob/models/card' +require 'lob/models/card_deletion' +require 'lob/models/card_editable' +require 'lob/models/card_list' +require 'lob/models/card_order' +require 'lob/models/card_order_editable' +require 'lob/models/card_order_list' +require 'lob/models/card_updatable' +require 'lob/models/check' +require 'lob/models/check_deletion' +require 'lob/models/check_editable' +require 'lob/models/check_list' +require 'lob/models/chk_use_type' +require 'lob/models/cmp_schedule_type' +require 'lob/models/cmp_use_type' +require 'lob/models/country_extended' +require 'lob/models/country_extended_expanded' +require 'lob/models/creative_patch' +require 'lob/models/creative_response' +require 'lob/models/creative_writable' +require 'lob/models/custom_envelope_returned' +require 'lob/models/deliverability_analysis' +require 'lob/models/dpv_footnote' +require 'lob/models/engine_html' +require 'lob/models/event_type' +require 'lob/models/events' +require 'lob/models/export' +require 'lob/models/export_model' +require 'lob/models/geocode_addresses' +require 'lob/models/geocode_components' +require 'lob/models/http_validation_error' +require 'lob/models/identity_validation' +require 'lob/models/inline_object' +require 'lob/models/intl_autocompletions' +require 'lob/models/intl_autocompletions_writable' +require 'lob/models/intl_components' +require 'lob/models/intl_suggestions' +require 'lob/models/intl_verification' +require 'lob/models/intl_verification_or_error' +require 'lob/models/intl_verification_writable' +require 'lob/models/intl_verifications' +require 'lob/models/intl_verifications_payload' +require 'lob/models/letter' +require 'lob/models/letter_custom_envelope' +require 'lob/models/letter_deletion' +require 'lob/models/letter_details_returned' +require 'lob/models/letter_details_writable' +require 'lob/models/letter_editable' +require 'lob/models/letter_list' +require 'lob/models/lob_confidence_score' +require 'lob/models/lob_error' +require 'lob/models/location' +require 'lob/models/location_analysis' +require 'lob/models/ltr_use_type' +require 'lob/models/mail_type' +require 'lob/models/multi_line_address' +require 'lob/models/multiple_components' +require 'lob/models/multiple_components_intl' +require 'lob/models/multiple_components_list' +require 'lob/models/optional_address_column_mapping' +require 'lob/models/placeholder_model' +require 'lob/models/postcard' +require 'lob/models/postcard_deletion' +require 'lob/models/postcard_details_returned' +require 'lob/models/postcard_details_writable' +require 'lob/models/postcard_editable' +require 'lob/models/postcard_list' +require 'lob/models/postcard_size' +require 'lob/models/psc_use_type' +require 'lob/models/qr_code' +require 'lob/models/required_address_column_mapping' +require 'lob/models/return_envelope' +require 'lob/models/reverse_geocode' +require 'lob/models/self_mailer' +require 'lob/models/self_mailer_deletion' +require 'lob/models/self_mailer_editable' +require 'lob/models/self_mailer_list' +require 'lob/models/self_mailer_size' +require 'lob/models/sfm_use_type' +require 'lob/models/snap_pack' +require 'lob/models/snap_pack_deletion' +require 'lob/models/snap_pack_editable' +require 'lob/models/snap_pack_list' +require 'lob/models/snap_pack_size' +require 'lob/models/snp_use_type' +require 'lob/models/sort_by' +require 'lob/models/sort_by1' +require 'lob/models/sort_by2' +require 'lob/models/sort_by3' +require 'lob/models/sort_by4' +require 'lob/models/sort_by_date_modified' +require 'lob/models/suggestions' +require 'lob/models/template' +require 'lob/models/template_deletion' +require 'lob/models/template_list' +require 'lob/models/template_update' +require 'lob/models/template_version' +require 'lob/models/template_version_deletion' +require 'lob/models/template_version_list' +require 'lob/models/template_version_updatable' +require 'lob/models/template_version_writable' +require 'lob/models/template_writable' +require 'lob/models/thumbnail' +require 'lob/models/tracking_event_certified' +require 'lob/models/tracking_event_details' +require 'lob/models/tracking_event_normal' +require 'lob/models/upload' +require 'lob/models/upload_create_export' +require 'lob/models/upload_file' +require 'lob/models/upload_state' +require 'lob/models/upload_updatable' +require 'lob/models/upload_writable' +require 'lob/models/uploads_metadata' +require 'lob/models/us_autocompletions' +require 'lob/models/us_autocompletions_writable' +require 'lob/models/us_components' +require 'lob/models/us_verification' +require 'lob/models/us_verification_or_error' +require 'lob/models/us_verifications' +require 'lob/models/us_verifications_writable' +require 'lob/models/validation_error' +require 'lob/models/zip' +require 'lob/models/zip_code_type' +require 'lob/models/zip_editable' +require 'lob/models/zip_lookup_city' + +# APIs +require 'lob/api/addresses_api' +require 'lob/api/bank_accounts_api' +require 'lob/api/billing_groups_api' +require 'lob/api/buckslip_orders_api' +require 'lob/api/buckslips_api' +require 'lob/api/campaigns_api' +require 'lob/api/card_orders_api' +require 'lob/api/cards_api' +require 'lob/api/checks_api' +require 'lob/api/creatives_api' +require 'lob/api/default_api' +require 'lob/api/identity_validation_api' +require 'lob/api/intl_autocompletions_api' +require 'lob/api/intl_verifications_api' +require 'lob/api/letters_api' +require 'lob/api/postcards_api' +require 'lob/api/reverse_geocode_lookups_api' +require 'lob/api/self_mailers_api' +require 'lob/api/snap_packs_api' +require 'lob/api/template_versions_api' +require 'lob/api/templates_api' +require 'lob/api/uploads_api' +require 'lob/api/us_autocompletions_api' +require 'lob/api/us_verifications_api' +require 'lob/api/zip_lookups_api' + +module Lob + class << self + # Customize default settings for the SDK using block. + # Lob.configure do |config| + # config.username = "xxx" + # config.password = "xxx" + # end + # If no block given, return the default Configuration object. + def configure + if block_given? + yield(Configuration.default) + else + Configuration.default + end + end + end +end diff --git a/lib/lob/api/addresses_api.rb b/lib/lob/api/addresses_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/bank_accounts_api.rb b/lib/lob/api/bank_accounts_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/billing_groups_api.rb b/lib/lob/api/billing_groups_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/buckslip_orders_api.rb b/lib/lob/api/buckslip_orders_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/buckslips_api.rb b/lib/lob/api/buckslips_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/campaigns_api.rb b/lib/lob/api/campaigns_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/card_orders_api.rb b/lib/lob/api/card_orders_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/cards_api.rb b/lib/lob/api/cards_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/checks_api.rb b/lib/lob/api/checks_api.rb old mode 100755 new mode 100644 index de73691..9d1598c --- a/lib/lob/api/checks_api.rb +++ b/lib/lob/api/checks_api.rb @@ -242,7 +242,7 @@ def check_retrieve_with_http_info(chk_id, opts = {}) # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` # @option opts [Hash] :send_date Filter by date sent. # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') - # @option opts [SortBy3] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. # @return [CheckList] def list(opts = {}) data, _status_code, _headers = checks_list_with_http_info(opts) @@ -261,7 +261,7 @@ def list(opts = {}) # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` # @option opts [Hash] :send_date Filter by date sent. # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') - # @option opts [SortBy3] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. # @return [Array<(CheckList, Integer, Hash)>] CheckList data, response status code and response headers def checks_list_with_http_info(opts = {}) if @api_client.config.debugging diff --git a/lib/lob/api/creatives_api.rb b/lib/lob/api/creatives_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/default_api.rb b/lib/lob/api/default_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/identity_validation_api.rb b/lib/lob/api/identity_validation_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/intl_autocompletions_api.rb b/lib/lob/api/intl_autocompletions_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/intl_verifications_api.rb b/lib/lob/api/intl_verifications_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/letters_api.rb b/lib/lob/api/letters_api.rb old mode 100755 new mode 100644 index ff95219..4597779 --- a/lib/lob/api/letters_api.rb +++ b/lib/lob/api/letters_api.rb @@ -246,7 +246,7 @@ def letter_retrieve_with_http_info(ltr_id, opts = {}) # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` # @option opts [Hash] :send_date Filter by date sent. # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') - # @option opts [SortBy3] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. # @return [LetterList] def list(opts = {}) data, _status_code, _headers = letters_list_with_http_info(opts) @@ -266,7 +266,7 @@ def list(opts = {}) # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` # @option opts [Hash] :send_date Filter by date sent. # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') - # @option opts [SortBy3] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. # @return [Array<(LetterList, Integer, Hash)>] LetterList data, response status code and response headers def letters_list_with_http_info(opts = {}) if @api_client.config.debugging diff --git a/lib/lob/api/postcards_api.rb b/lib/lob/api/postcards_api.rb old mode 100755 new mode 100644 index 9e58839..c60ba60 --- a/lib/lob/api/postcards_api.rb +++ b/lib/lob/api/postcards_api.rb @@ -243,7 +243,7 @@ def postcard_retrieve_with_http_info(psc_id, opts = {}) # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` # @option opts [Hash] :send_date Filter by date sent. # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') - # @option opts [SortBy3] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. # @return [PostcardList] def list(opts = {}) data, _status_code, _headers = postcards_list_with_http_info(opts) @@ -263,7 +263,7 @@ def list(opts = {}) # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` # @option opts [Hash] :send_date Filter by date sent. # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') - # @option opts [SortBy3] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. # @return [Array<(PostcardList, Integer, Hash)>] PostcardList data, response status code and response headers def postcards_list_with_http_info(opts = {}) if @api_client.config.debugging diff --git a/lib/lob/api/reverse_geocode_lookups_api.rb b/lib/lob/api/reverse_geocode_lookups_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/self_mailers_api.rb b/lib/lob/api/self_mailers_api.rb old mode 100755 new mode 100644 index 240f8eb..7e385dc --- a/lib/lob/api/self_mailers_api.rb +++ b/lib/lob/api/self_mailers_api.rb @@ -243,7 +243,7 @@ def self_mailer_retrieve_with_http_info(sfm_id, opts = {}) # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` # @option opts [Hash] :send_date Filter by date sent. # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') - # @option opts [SortBy3] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. # @return [SelfMailerList] def list(opts = {}) data, _status_code, _headers = self_mailers_list_with_http_info(opts) @@ -263,7 +263,7 @@ def list(opts = {}) # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` # @option opts [Hash] :send_date Filter by date sent. # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') - # @option opts [SortBy3] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. # @return [Array<(SelfMailerList, Integer, Hash)>] SelfMailerList data, response status code and response headers def self_mailers_list_with_http_info(opts = {}) if @api_client.config.debugging diff --git a/lib/lob/api/snap_packs_api.rb b/lib/lob/api/snap_packs_api.rb new file mode 100644 index 0000000..eb2ce68 --- /dev/null +++ b/lib/lob/api/snap_packs_api.rb @@ -0,0 +1,340 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'cgi' + +module Lob + class SnapPacksApi + attr_accessor :api_client + + def initialize(api_client = ApiClient.default) + @api_client = api_client + end + # create + # Creates a new snap_pack given information + # @param snap_pack_editable [SnapPackEditable] + # @param [Hash] opts the optional parameters + # @option opts [String] :idempotency_key A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). + # @return [SnapPack] + def create(snap_pack_editable, opts = {}) + data, _status_code, _headers = snap_pack_create_with_http_info(snap_pack_editable, opts) + data + end + + # create + # Creates a new snap_pack given information + # @param snap_pack_editable [SnapPackEditable] + # @param [Hash] opts the optional parameters + # @option opts [String] :idempotency_key A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). + # @return [Array<(SnapPack, Integer, Hash)>] SnapPack data, response status code and response headers + def snap_pack_create_with_http_info(snap_pack_editable, opts = {}) + if @api_client.config.debugging + @api_client.config.logger.debug 'Calling API: SnapPacksApi.snap_pack_create ...' + end + # verify the required parameter 'snap_pack_editable' is set + if @api_client.config.client_side_validation && snap_pack_editable.nil? + fail ArgumentError, "Missing the required parameter 'snap_pack_editable' when calling SnapPacksApi.snap_pack_create" + end + if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 256 + fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling SnapPacksApi.snap_pack_create, the character length must be smaller than or equal to 256.' + end + + # resource path + local_var_path = '/snap_packs' + + # query parameters + query_params = opts[:query_params] || {} + + # header parameters + header_params = opts[:header_params] || {} + # HTTP header 'Accept' (if needed) + header_params['Accept'] = @api_client.select_header_accept(['application/json']) + # HTTP header 'Content-Type' + content_type = @api_client.select_header_content_type(['application/json', 'application/x-www-form-urlencoded', 'multipart/form-data']) + if !content_type.nil? + header_params['Content-Type'] = content_type + end + header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil? + + # form parameters + form_params = opts[:form_params] || {} + + # http body (model) + post_body = opts[:debug_body] || @api_client.object_to_http_body(snap_pack_editable) + + # return_type + return_type = opts[:debug_return_type] || 'SnapPack' + + # auth_names + auth_names = opts[:debug_auth_names] || ['basicAuth'] + + new_options = opts.merge( + :operation => :"SnapPacksApi.snap_pack_create", + :header_params => header_params, + :query_params => query_params, + :form_params => form_params, + :body => post_body, + :auth_names => auth_names, + :return_type => return_type + ) + + data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options) + if @api_client.config.debugging + @api_client.config.logger.debug "API called: SnapPacksApi#snap_pack_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" + end + return data, status_code, headers + end + + # delete + # Completely removes a snap pack from production. This can only be done if the snap pack's `send_date` has not yet passed. + # @param snp_id [String] id of the snap_pack + # @param [Hash] opts the optional parameters + # @return [SnapPackDeletion] + def delete(snp_id, opts = {}) + data, _status_code, _headers = snap_pack_delete_with_http_info(snp_id, opts) + data + end + + # delete + # Completely removes a snap pack from production. This can only be done if the snap pack's `send_date` has not yet passed. + # @param snp_id [String] id of the snap_pack + # @param [Hash] opts the optional parameters + # @return [Array<(SnapPackDeletion, Integer, Hash)>] SnapPackDeletion data, response status code and response headers + def snap_pack_delete_with_http_info(snp_id, opts = {}) + if @api_client.config.debugging + @api_client.config.logger.debug 'Calling API: SnapPacksApi.snap_pack_delete ...' + end + # verify the required parameter 'snp_id' is set + if @api_client.config.client_side_validation && snp_id.nil? + fail ArgumentError, "Missing the required parameter 'snp_id' when calling SnapPacksApi.snap_pack_delete" + end + pattern = Regexp.new(/^ord_[a-zA-Z0-9]+$/) + if @api_client.config.client_side_validation && snp_id !~ pattern + fail ArgumentError, "invalid value for 'snp_id' when calling SnapPacksApi.snap_pack_delete, must conform to the pattern #{pattern}." + end + + # resource path + local_var_path = '/snap_packs/{snp_id}'.sub('{' + 'snp_id' + '}', CGI.escape(snp_id.to_s)) + + # query parameters + query_params = opts[:query_params] || {} + + # header parameters + header_params = opts[:header_params] || {} + # HTTP header 'Accept' (if needed) + header_params['Accept'] = @api_client.select_header_accept(['application/json']) + + # form parameters + form_params = opts[:form_params] || {} + + # http body (model) + post_body = opts[:debug_body] + + # return_type + return_type = opts[:debug_return_type] || 'SnapPackDeletion' + + # auth_names + auth_names = opts[:debug_auth_names] || ['basicAuth'] + + new_options = opts.merge( + :operation => :"SnapPacksApi.snap_pack_delete", + :header_params => header_params, + :query_params => query_params, + :form_params => form_params, + :body => post_body, + :auth_names => auth_names, + :return_type => return_type + ) + + data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options) + if @api_client.config.debugging + @api_client.config.logger.debug "API called: SnapPacksApi#snap_pack_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" + end + return data, status_code, headers + end + + # get + # Retrieves the details of an existing snap_pack. You need only supply the unique snap_pack identifier that was returned upon snap_pack creation. + # @param snp_id [String] id of the snap_pack + # @param [Hash] opts the optional parameters + # @return [SnapPack] + def get(snp_id, opts = {}) + data, _status_code, _headers = snap_pack_retrieve_with_http_info(snp_id, opts) + data + end + + # get + # Retrieves the details of an existing snap_pack. You need only supply the unique snap_pack identifier that was returned upon snap_pack creation. + # @param snp_id [String] id of the snap_pack + # @param [Hash] opts the optional parameters + # @return [Array<(SnapPack, Integer, Hash)>] SnapPack data, response status code and response headers + def snap_pack_retrieve_with_http_info(snp_id, opts = {}) + if @api_client.config.debugging + @api_client.config.logger.debug 'Calling API: SnapPacksApi.snap_pack_retrieve ...' + end + # verify the required parameter 'snp_id' is set + if @api_client.config.client_side_validation && snp_id.nil? + fail ArgumentError, "Missing the required parameter 'snp_id' when calling SnapPacksApi.snap_pack_retrieve" + end + pattern = Regexp.new(/^ord_[a-zA-Z0-9]+$/) + if @api_client.config.client_side_validation && snp_id !~ pattern + fail ArgumentError, "invalid value for 'snp_id' when calling SnapPacksApi.snap_pack_retrieve, must conform to the pattern #{pattern}." + end + + # resource path + local_var_path = '/snap_packs/{snp_id}'.sub('{' + 'snp_id' + '}', CGI.escape(snp_id.to_s)) + + # query parameters + query_params = opts[:query_params] || {} + + # header parameters + header_params = opts[:header_params] || {} + # HTTP header 'Accept' (if needed) + header_params['Accept'] = @api_client.select_header_accept(['application/json']) + + # form parameters + form_params = opts[:form_params] || {} + + # http body (model) + post_body = opts[:debug_body] + + # return_type + return_type = opts[:debug_return_type] || 'SnapPack' + + # auth_names + auth_names = opts[:debug_auth_names] || ['basicAuth'] + + new_options = opts.merge( + :operation => :"SnapPacksApi.snap_pack_retrieve", + :header_params => header_params, + :query_params => query_params, + :form_params => form_params, + :body => post_body, + :auth_names => auth_names, + :return_type => return_type + ) + + data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options) + if @api_client.config.debugging + @api_client.config.logger.debug "API called: SnapPacksApi#snap_pack_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" + end + return data, status_code, headers + end + + # list + # Returns a list of your Snap Packs. The snap packs are returned sorted by creation date, with the most recently created snap packs appearing first. + # @param [Hash] opts the optional parameters + # @option opts [Integer] :limit How many results to return. (default to 10) + # @option opts [String] :before A reference to a list entry used for paginating to the previous set of entries. This field is pre-populated in the `previous_url` field in the return response. + # @option opts [String] :after A reference to a list entry used for paginating to the next set of entries. This field is pre-populated in the `next_url` field in the return response. + # @option opts [Array] :include Request that the response include the total count by specifying `include[]=total_count`. + # @option opts [Hash] :date_created Filter by date created. + # @option opts [Hash] :metadata Filter by metadata key-value pair`. + # @option opts [Array] :size The Snap Pack sizes to be returned. + # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` + # @option opts [Hash] :send_date Filter by date sent. + # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @return [SnapPackList] + def list(opts = {}) + data, _status_code, _headers = snap_packs_list_with_http_info(opts) + data + end + + # list + # Returns a list of your Snap Packs. The snap packs are returned sorted by creation date, with the most recently created snap packs appearing first. + # @param [Hash] opts the optional parameters + # @option opts [Integer] :limit How many results to return. (default to 10) + # @option opts [String] :before A reference to a list entry used for paginating to the previous set of entries. This field is pre-populated in the `previous_url` field in the return response. + # @option opts [String] :after A reference to a list entry used for paginating to the next set of entries. This field is pre-populated in the `next_url` field in the return response. + # @option opts [Array] :include Request that the response include the total count by specifying `include[]=total_count`. + # @option opts [Hash] :date_created Filter by date created. + # @option opts [Hash] :metadata Filter by metadata key-value pair`. + # @option opts [Array] :size The Snap Pack sizes to be returned. + # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` + # @option opts [Hash] :send_date Filter by date sent. + # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. (default to 'usps_first_class') + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @return [Array<(SnapPackList, Integer, Hash)>] SnapPackList data, response status code and response headers + def snap_packs_list_with_http_info(opts = {}) + if @api_client.config.debugging + @api_client.config.logger.debug 'Calling API: SnapPacksApi.snap_packs_list ...' + end + if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100 + fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling SnapPacksApi.snap_packs_list, must be smaller than or equal to 100.' + end + + if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1 + fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling SnapPacksApi.snap_packs_list, must be greater than or equal to 1.' + end + + if @api_client.config.client_side_validation && !opts[:'metadata'].nil? && opts[:'metadata'].to_s.length > 500 + fail ArgumentError, 'invalid value for "opts[:"metadata"]" when calling SnapPacksApi.snap_packs_list, the character length must be smaller than or equal to 500.' + end + + pattern = Regexp.new(/[^"\\]{0,500}/) + if @api_client.config.client_side_validation && !opts[:'metadata'].nil? && opts[:'metadata'] !~ pattern + fail ArgumentError, "invalid value for 'opts[:\"metadata\"]' when calling SnapPacksApi.snap_packs_list, must conform to the pattern #{pattern}." + end + + # resource path + local_var_path = '/snap_packs' + + # query parameters + query_params = opts[:query_params] || {} + query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil? + query_params[:'before'] = opts[:'before'] if !opts[:'before'].nil? + query_params[:'after'] = opts[:'after'] if !opts[:'after'].nil? + query_params[:'include'] = @api_client.build_collection_param(opts[:'include'], :multi) if !opts[:'include'].nil? + query_params[:'date_created'] = opts[:'date_created'] if !opts[:'date_created'].nil? + query_params[:'metadata'] = opts[:'metadata'] if !opts[:'metadata'].nil? + query_params[:'size'] = @api_client.build_collection_param(opts[:'size'], :multi) if !opts[:'size'].nil? + query_params[:'scheduled'] = opts[:'scheduled'] if !opts[:'scheduled'].nil? + query_params[:'send_date'] = opts[:'send_date'] if !opts[:'send_date'].nil? + query_params[:'mail_type'] = opts[:'mail_type'] if !opts[:'mail_type'].nil? + query_params[:'sort_by'] = opts[:'sort_by'] if !opts[:'sort_by'].nil? + + # header parameters + header_params = opts[:header_params] || {} + # HTTP header 'Accept' (if needed) + header_params['Accept'] = @api_client.select_header_accept(['application/json']) + + # form parameters + form_params = opts[:form_params] || {} + + # http body (model) + post_body = opts[:debug_body] + + # return_type + return_type = opts[:debug_return_type] || 'SnapPackList' + + # auth_names + auth_names = opts[:debug_auth_names] || ['basicAuth'] + + new_options = opts.merge( + :operation => :"SnapPacksApi.snap_packs_list", + :header_params => header_params, + :query_params => query_params, + :form_params => form_params, + :body => post_body, + :auth_names => auth_names, + :return_type => return_type + ) + + data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options) + if @api_client.config.debugging + @api_client.config.logger.debug "API called: SnapPacksApi#snap_packs_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" + end + return data, status_code, headers + end + end +end diff --git a/lib/lob/api/template_versions_api.rb b/lib/lob/api/template_versions_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/templates_api.rb b/lib/lob/api/templates_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/uploads_api.rb b/lib/lob/api/uploads_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/us_autocompletions_api.rb b/lib/lob/api/us_autocompletions_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/us_verifications_api.rb b/lib/lob/api/us_verifications_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api/zip_lookups_api.rb b/lib/lob/api/zip_lookups_api.rb old mode 100755 new mode 100644 diff --git a/lib/lob/api_client.rb b/lib/lob/api_client.rb new file mode 100644 index 0000000..dc99931 --- /dev/null +++ b/lib/lob/api_client.rb @@ -0,0 +1,392 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'date' +require 'json' +require 'logger' +require 'tempfile' +require 'time' +require 'typhoeus' + +module Lob + class ApiClient + # The Configuration object holding settings to be used in the API client. + attr_accessor :config + + # Defines the headers to be used in HTTP requests of all API calls by default. + # + # @return [Hash] + attr_accessor :default_headers + + # Initializes the ApiClient + # @option config [Configuration] Configuration for initializing the object, default to Configuration.default + def initialize(config = Configuration.default) + @config = config + @user_agent = "OpenAPI-Generator/#{VERSION}/ruby" + @default_headers = { + 'Content-Type' => 'application/json', + 'User-Agent' => @user_agent + } + end + + def self.default + @@default ||= ApiClient.new + end + + # Call an API with given options. + # + # @return [Array<(Object, Integer, Hash)>] an array of 3 elements: + # the data deserialized from response body (could be nil), response status code and response headers. + def call_api(http_method, path, opts = {}) + request = build_request(http_method, path, opts) + response = request.run + + if @config.debugging + @config.logger.debug "HTTP response body ~BEGIN~\n#{response.body}\n~END~\n" + end + + unless response.success? + if response.timed_out? + fail ApiError.new('Connection timed out') + elsif response.code == 0 + # Errors from libcurl will be made visible here + fail ApiError.new(:code => 0, + :message => response.return_message) + else + fail ApiError.new(:code => response.code, + :response_headers => response.headers, + :response_body => response.body), + response.status_message + end + end + + if opts[:return_type] + data = deserialize(response, opts[:return_type]) + else + data = nil + end + return data, response.code, response.headers + end + + # Builds the HTTP request + # + # @param [String] http_method HTTP method/verb (e.g. POST) + # @param [String] path URL path (e.g. /account/new) + # @option opts [Hash] :header_params Header parameters + # @option opts [Hash] :query_params Query parameters + # @option opts [Hash] :form_params Query parameters + # @option opts [Object] :body HTTP body (JSON/XML) + # @return [Typhoeus::Request] A Typhoeus Request + def build_request(http_method, path, opts = {}) + url = build_request_url(path, opts) + http_method = http_method.to_sym.downcase + + header_params = @default_headers.merge(opts[:header_params] || {}) + query_params = opts[:query_params] || {} + form_params = opts[:form_params] || {} + follow_location = opts[:follow_location] || true + + update_params_for_auth! header_params, query_params, opts[:auth_names] + + # set ssl_verifyhosts option based on @config.verify_ssl_host (true/false) + _verify_ssl_host = @config.verify_ssl_host ? 2 : 0 + + req_opts = { + :method => http_method, + :headers => header_params, + :params => query_params, + :params_encoding => @config.params_encoding, + :timeout => @config.timeout, + :ssl_verifypeer => @config.verify_ssl, + :ssl_verifyhost => _verify_ssl_host, + :sslcert => @config.cert_file, + :sslkey => @config.key_file, + :verbose => @config.debugging, + :followlocation => follow_location + } + + # set custom cert, if provided + req_opts[:cainfo] = @config.ssl_ca_cert if @config.ssl_ca_cert + + if [:post, :patch, :put, :delete].include?(http_method) + req_body = build_request_body(header_params, form_params, opts[:body]) + req_opts.update :body => req_body + if @config.debugging + @config.logger.debug "HTTP request body param ~BEGIN~\n#{req_body}\n~END~\n" + end + end + + request = Typhoeus::Request.new(url, req_opts) + download_file(request) if opts[:return_type] == 'File' + request + end + + # Builds the HTTP request body + # + # @param [Hash] header_params Header parameters + # @param [Hash] form_params Query parameters + # @param [Object] body HTTP body (JSON/XML) + # @return [String] HTTP body data in the form of string + def build_request_body(header_params, form_params, body) + # http form + if header_params['Content-Type'] == 'application/x-www-form-urlencoded' || + header_params['Content-Type'] == 'multipart/form-data' + data = {} + form_params.each do |key, value| + case value + when ::File, ::Array, nil + # let typhoeus handle File, Array and nil parameters + data[key] = value + else + data[key] = value.to_s + end + end + elsif body + data = body.is_a?(String) ? body : body.to_json + else + data = nil + end + data + end + + # Save response body into a file in (the defined) temporary folder, using the filename + # from the "Content-Disposition" header if provided, otherwise a random filename. + # The response body is written to the file in chunks in order to handle files which + # size is larger than maximum Ruby String or even larger than the maximum memory a Ruby + # process can use. + # + # @see Configuration#temp_folder_path + def download_file(request) + tempfile = nil + encoding = nil + request.on_headers do |response| + content_disposition = response.headers['Content-Disposition'] + if content_disposition && content_disposition =~ /filename=/i + filename = content_disposition[/filename=['"]?([^'"\s]+)['"]?/, 1] + prefix = sanitize_filename(filename) + else + prefix = 'download-' + end + prefix = prefix + '-' unless prefix.end_with?('-') + encoding = response.body.encoding + tempfile = Tempfile.open(prefix, @config.temp_folder_path, encoding: encoding) + @tempfile = tempfile + end + request.on_body do |chunk| + chunk.force_encoding(encoding) + tempfile.write(chunk) + end + request.on_complete do |response| + if tempfile + tempfile.close + @config.logger.info "Temp file written to #{tempfile.path}, please copy the file to a proper folder "\ + "with e.g. `FileUtils.cp(tempfile.path, '/new/file/path')` otherwise the temp file "\ + "will be deleted automatically with GC. It's also recommended to delete the temp file "\ + "explicitly with `tempfile.delete`" + end + end + end + + # Check if the given MIME is a JSON MIME. + # JSON MIME examples: + # application/json + # application/json; charset=UTF8 + # APPLICATION/JSON + # */* + # @param [String] mime MIME + # @return [Boolean] True if the MIME is application/json + def json_mime?(mime) + (mime == '*/*') || !(mime =~ /Application\/.*json(?!p)(;.*)?/i).nil? + end + + # Deserialize the response to the given return type. + # + # @param [Response] response HTTP response + # @param [String] return_type some examples: "User", "Array", "Hash" + def deserialize(response, return_type) + body = response.body + + # handle file downloading - return the File instance processed in request callbacks + # note that response body is empty when the file is written in chunks in request on_body callback + return @tempfile if return_type == 'File' + + return nil if body.nil? || body.empty? + + # return response body directly for String return type + return body if return_type == 'String' + + # ensuring a default content type + content_type = response.headers['Content-Type'] || 'application/json' + + fail "Content-Type is not supported: #{content_type}" unless json_mime?(content_type) + + begin + data = JSON.parse("[#{body}]", :symbolize_names => true)[0] + rescue JSON::ParserError => e + if %w(String Date Time).include?(return_type) + data = body + else + raise e + end + end + + convert_to_type data, return_type + end + + # Convert data to the given return type. + # @param [Object] data Data to be converted + # @param [String] return_type Return type + # @return [Mixed] Data in a particular type + def convert_to_type(data, return_type) + return nil if data.nil? + case return_type + when 'String' + data.to_s + when 'Integer' + data.to_i + when 'Float' + data.to_f + when 'Boolean' + data == true + when 'Time' + # parse date time (expecting ISO 8601 format) + Time.parse data + when 'Date' + # parse date time (expecting ISO 8601 format) + Date.parse data + when 'Object' + # generic object (usually a Hash), return directly + data + when /\AArray<(.+)>\z/ + # e.g. Array + sub_type = $1 + data.map { |item| convert_to_type(item, sub_type) } + when /\AHash\\z/ + # e.g. Hash + sub_type = $1 + {}.tap do |hash| + data.each { |k, v| hash[k] = convert_to_type(v, sub_type) } + end + else + # models (e.g. Pet) or oneOf + klass = Lob.const_get(return_type) + klass.respond_to?(:openapi_one_of) ? klass.build(data) : klass.build_from_hash(data) + end + end + + # Sanitize filename by removing path. + # e.g. ../../sun.gif becomes sun.gif + # + # @param [String] filename the filename to be sanitized + # @return [String] the sanitized filename + def sanitize_filename(filename) + filename.gsub(/.*[\/\\]/, '') + end + + def build_request_url(path, opts = {}) + # Add leading and trailing slashes to path + path = "/#{path}".gsub(/\/+/, '/') + @config.base_url(opts[:operation]) + path + end + + # Update header and query params based on authentication settings. + # + # @param [Hash] header_params Header parameters + # @param [Hash] query_params Query parameters + # @param [String] auth_names Authentication scheme name + def update_params_for_auth!(header_params, query_params, auth_names) + Array(auth_names).each do |auth_name| + auth_setting = @config.auth_settings[auth_name] + next unless auth_setting + case auth_setting[:in] + when 'header' then header_params[auth_setting[:key]] = auth_setting[:value] + when 'query' then query_params[auth_setting[:key]] = auth_setting[:value] + else fail ArgumentError, 'Authentication token must be in `query` or `header`' + end + end + end + + # Sets user agent in HTTP header + # + # @param [String] user_agent User agent (e.g. openapi-generator/ruby/1.0.0) + def user_agent=(user_agent) + @user_agent = user_agent + @default_headers['User-Agent'] = @user_agent + end + + # Return Accept header based on an array of accepts provided. + # @param [Array] accepts array for Accept + # @return [String] the Accept header (e.g. application/json) + def select_header_accept(accepts) + return nil if accepts.nil? || accepts.empty? + # use JSON when present, otherwise use all of the provided + json_accept = accepts.find { |s| json_mime?(s) } + json_accept || accepts.join(',') + end + + # Return Content-Type header based on an array of content types provided. + # @param [Array] content_types array for Content-Type + # @return [String] the Content-Type header (e.g. application/json) + def select_header_content_type(content_types) + # return nil by default + return if content_types.nil? || content_types.empty? + # use JSON when present, otherwise use the first one + json_content_type = content_types.find { |s| json_mime?(s) } + json_content_type || content_types.first + end + + # Convert object (array, hash, object, etc) to JSON string. + # @param [Object] model object to be converted into JSON string + # @return [String] JSON string representation of the object + def object_to_http_body(model) + return model if model.nil? || model.is_a?(String) + local_body = nil + if model.is_a?(Array) + local_body = model.map { |m| object_to_hash(m) } + else + local_body = object_to_hash(model) + end + local_body.to_json + end + + # Convert object(non-array) to hash. + # @param [Object] obj object to be converted into JSON string + # @return [String] JSON string representation of the object + def object_to_hash(obj) + if obj.respond_to?(:to_hash) + obj.to_hash + else + obj + end + end + + # Build parameter value according to the given collection format. + # @param [String] collection_format one of :csv, :ssv, :tsv, :pipes and :multi + def build_collection_param(param, collection_format) + case collection_format + when :csv + param.join(',') + when :ssv + param.join(' ') + when :tsv + param.join("\t") + when :pipes + param.join('|') + when :multi + # return the array directly as typhoeus will handle it as expected + param + else + fail "unknown collection format: #{collection_format.inspect}" + end + end + end +end diff --git a/lib/lob/api_error.rb b/lib/lob/api_error.rb new file mode 100644 index 0000000..adab133 --- /dev/null +++ b/lib/lob/api_error.rb @@ -0,0 +1,57 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +module Lob + class ApiError < StandardError + attr_reader :code, :response_headers, :response_body + + # Usage examples: + # ApiError.new + # ApiError.new("message") + # ApiError.new(:code => 500, :response_headers => {}, :response_body => "") + # ApiError.new(:code => 404, :message => "Not Found") + def initialize(arg = nil) + if arg.is_a? Hash + if arg.key?(:message) || arg.key?('message') + super(arg[:message] || arg['message']) + else + super arg + end + + arg.each do |k, v| + instance_variable_set "@#{k}", v + end + else + super arg + end + end + + # Override to_s to display a friendly error message + def to_s + message + end + + def message + if @message.nil? + msg = "Error message: the server returns an error" + else + msg = @message + end + + msg += "\nHTTP status code: #{code}" if code + msg += "\nResponse headers: #{response_headers}" if response_headers + msg += "\nResponse body: #{response_body}" if response_body + + msg + end + end +end diff --git a/lib/lob/configuration.rb b/lib/lob/configuration.rb new file mode 100644 index 0000000..7e6a4b8 --- /dev/null +++ b/lib/lob/configuration.rb @@ -0,0 +1,279 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +module Lob + class Configuration + # Defines url scheme + attr_accessor :scheme + + # Defines url host + attr_accessor :host + + # Defines url base path + attr_accessor :base_path + + # Define server configuration index + attr_accessor :server_index + + # Define server operation configuration index + attr_accessor :server_operation_index + + # Default server variables + attr_accessor :server_variables + + # Default server operation variables + attr_accessor :server_operation_variables + + # Defines API keys used with API Key authentications. + # + # @return [Hash] key: parameter name, value: parameter value (API key) + # + # @example parameter name is "api_key", API key is "xxx" (e.g. "api_key=xxx" in query string) + # config.api_key['api_key'] = 'xxx' + attr_accessor :api_key + + # Defines API key prefixes used with API Key authentications. + # + # @return [Hash] key: parameter name, value: API key prefix + # + # @example parameter name is "Authorization", API key prefix is "Token" (e.g. "Authorization: Token xxx" in headers) + # config.api_key_prefix['api_key'] = 'Token' + attr_accessor :api_key_prefix + + # Defines the username used with HTTP basic authentication. + # + # @return [String] + attr_accessor :username + + # Defines the password used with HTTP basic authentication. + # + # @return [String] + attr_accessor :password + + # Defines the access token (Bearer) used with OAuth2. + attr_accessor :access_token + + # Set this to enable/disable debugging. When enabled (set to true), HTTP request/response + # details will be logged with `logger.debug` (see the `logger` attribute). + # Default to false. + # + # @return [true, false] + attr_accessor :debugging + + # Defines the logger used for debugging. + # Default to `Rails.logger` (when in Rails) or logging to STDOUT. + # + # @return [#debug] + attr_accessor :logger + + # Defines the temporary folder to store downloaded files + # (for API endpoints that have file response). + # Default to use `Tempfile`. + # + # @return [String] + attr_accessor :temp_folder_path + + # The time limit for HTTP request in seconds. + # Default to 0 (never times out). + attr_accessor :timeout + + # Set this to false to skip client side validation in the operation. + # Default to true. + # @return [true, false] + attr_accessor :client_side_validation + + ### TLS/SSL setting + # Set this to false to skip verifying SSL certificate when calling API from https server. + # Default to true. + # + # @note Do NOT set it to false in production code, otherwise you would face multiple types of cryptographic attacks. + # + # @return [true, false] + attr_accessor :verify_ssl + + ### TLS/SSL setting + # Set this to false to skip verifying SSL host name + # Default to true. + # + # @note Do NOT set it to false in production code, otherwise you would face multiple types of cryptographic attacks. + # + # @return [true, false] + attr_accessor :verify_ssl_host + + ### TLS/SSL setting + # Set this to customize the certificate file to verify the peer. + # + # @return [String] the path to the certificate file + # + # @see The `cainfo` option of Typhoeus, `--cert` option of libcurl. Related source code: + # https://github.com/typhoeus/typhoeus/blob/master/lib/typhoeus/easy_factory.rb#L145 + attr_accessor :ssl_ca_cert + + ### TLS/SSL setting + # Client certificate file (for client certificate) + attr_accessor :cert_file + + ### TLS/SSL setting + # Client private key file (for client certificate) + attr_accessor :key_file + + # Set this to customize parameters encoding of array parameter with multi collectionFormat. + # Default to nil. + # + # @see The params_encoding option of Ethon. Related source code: + # https://github.com/typhoeus/ethon/blob/master/lib/ethon/easy/queryable.rb#L96 + attr_accessor :params_encoding + + + attr_accessor :inject_format + + attr_accessor :force_ending_format + + def initialize + @scheme = 'https' + @host = 'api.lob.com' + @base_path = '/v1' + @server_index = 0 + @server_operation_index = {} + @server_variables = {} + @server_operation_variables = {} + @api_key = {} + @api_key_prefix = {} + @client_side_validation = true + @verify_ssl = true + @verify_ssl_host = true + @cert_file = nil + @key_file = nil + @timeout = 0 + @params_encoding = nil + @debugging = false + @inject_format = false + @force_ending_format = false + @logger = defined?(Rails) ? Rails.logger : Logger.new(STDOUT) + + yield(self) if block_given? + end + + # The default Configuration object. + def self.default + @@default ||= Configuration.new + end + + def configure + yield(self) if block_given? + end + + def scheme=(scheme) + # remove :// from scheme + @scheme = scheme.sub(/:\/\//, '') + end + + def host=(host) + # remove http(s):// and anything after a slash + @host = host.sub(/https?:\/\//, '').split('/').first + end + + def base_path=(base_path) + # Add leading and trailing slashes to base_path + @base_path = "/#{base_path}".gsub(/\/+/, '/') + @base_path = '' if @base_path == '/' + end + + # Returns base URL for specified operation based on server settings + def base_url(operation = nil) + index = server_operation_index.fetch(operation, server_index) + return "#{scheme}://#{[host, base_path].join('/').gsub(/\/+/, '/')}".sub(/\/+\z/, '') if index == nil + + server_url(index, server_operation_variables.fetch(operation, server_variables), operation_server_settings[operation]) + end + + # Gets API key (with prefix if set). + # @param [String] param_name the parameter name of API key auth + def api_key_with_prefix(param_name, param_alias = nil) + key = @api_key[param_name] + key = @api_key.fetch(param_alias, key) unless param_alias.nil? + if @api_key_prefix[param_name] + "#{@api_key_prefix[param_name]} #{key}" + else + key + end + end + + # Gets Basic Auth token string + def basic_auth_token + 'Basic ' + ["#{username}:#{password}"].pack('m').delete("\r\n") + end + + # Returns Auth Settings hash for api client. + def auth_settings + { + 'basicAuth' => + { + type: 'basic', + in: 'header', + key: 'Authorization', + value: basic_auth_token + }, + } + end + + # Returns an array of Server setting + def server_settings + [ + { + url: "https://api.lob.com/v1", + description: "production", + } + ] + end + + def operation_server_settings + { + } + end + + # Returns URL based on server settings + # + # @param index array index of the server settings + # @param variables hash of variable and the corresponding value + def server_url(index, variables = {}, servers = nil) + servers = server_settings if servers == nil + + # check array index out of bound + if (index < 0 || index >= servers.size) + fail ArgumentError, "Invalid index #{index} when selecting the server. Must be less than #{servers.size}" + end + + server = servers[index] + url = server[:url] + + return url unless server.key? :variables + + # go through variable and assign a value + server[:variables].each do |name, variable| + if variables.key?(name) + if (!server[:variables][name].key?(:enum_values) || server[:variables][name][:enum_values].include?(variables[name])) + url.gsub! "{" + name.to_s + "}", variables[name] + else + fail ArgumentError, "The variable `#{name}` in the server URL has invalid value #{variables[name]}. Must be #{server[:variables][name][:enum_values]}." + end + else + # use default value + url.gsub! "{" + name.to_s + "}", server[:variables][name][:default_value] + end + end + + url + end + + end +end diff --git a/lib/lob/models/address.rb b/lib/lob/models/address.rb index 8296fcd..2f07124 100644 --- a/lib/lob/models/address.rb +++ b/lib/lob/models/address.rb @@ -14,92 +14,603 @@ require 'time' module Lob - module Address - class << self - # List of class defined in oneOf (OpenAPI v3) - def openapi_one_of - [ - :'IntlAddress', - :'UsAddress' - ] - end - - # Builds the object - # @param [Mixed] Data to be matched against the list of oneOf items - # @return [Object] Returns the model or the data itself - def build(data) - # Go through the list of oneOf items and attempt to identify the appropriate one. - # Note: - # - We do not attempt to check whether exactly one item matches. - # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 }) - # due to the way the deserialization is made in the base_object template (it just casts without verifying). - # - TODO: scalar values are de facto behaving as if they were nullable. - # - TODO: logging when debugging is set. - openapi_one_of.each do |klass| - begin - next if klass == :AnyType # "nullable: true" - typed_data = find_and_cast_into_type(klass, data) - return typed_data if typed_data - rescue # rescue all errors so we keep iterating even if the current item lookup raises + class Address + # Unique identifier prefixed with `adr_`. + attr_accessor :id + + # An internal description that identifies this resource. Must be no longer than 255 characters. + attr_accessor :description + + # name associated with address + attr_accessor :name + + # Either `name` or `company` is required, you may also add both. + attr_accessor :company + + # Must be no longer than 40 characters. + attr_accessor :phone + + # Must be no longer than 100 characters. + attr_accessor :email + + # Use metadata to store custom information for tagging and labeling back to your internal systems. Must be an object with up to 20 key-value pairs. Keys must be at most 40 characters and values must be at most 500 characters. Neither can contain the characters `\"` and `\\`. i.e. '{\"customer_id\" : \"NEWYORK2015\"}' Nested objects are not supported. See [Metadata](#section/Metadata) for more information. + attr_accessor :metadata + + attr_accessor :address_line1 + + attr_accessor :address_line2 + + attr_accessor :address_city + + # 2 letter state short-name code + attr_accessor :address_state + + # Must follow the ZIP format of `12345` or ZIP+4 format of `12345-1234`. + attr_accessor :address_zip + + attr_accessor :address_country + + attr_accessor :object + + # A timestamp in ISO 8601 format of the date the resource was created. + attr_accessor :date_created + + # A timestamp in ISO 8601 format of the date the resource was last modified. + attr_accessor :date_modified + + # Only returned if the resource has been successfully deleted. + attr_accessor :deleted + + # Only returned for accounts on certain Print & Mail Editions. Value is `true` if the address was altered because the recipient filed for a National Change of Address (NCOA), `false` if the NCOA check was run but no altered address was found, and `null` if the NCOA check was not run. The NCOA check does not happen for non-US addresses, for non-deliverable US addresses, or for addresses created before the NCOA feature was added to your account. + attr_accessor :recipient_moved + + class EnumAttributeValidator + attr_reader :datatype + attr_reader :allowable_values + + def initialize(datatype, allowable_values) + @allowable_values = allowable_values.map do |value| + case datatype.to_s + when /Integer/i + value.to_i + when /Float/i + value.to_f + else + value end end + end - openapi_one_of.include?(:AnyType) ? data : nil - end - - private - - SchemaMismatchError = Class.new(StandardError) - - # Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse. - def find_and_cast_into_type(klass, data) - return if data.nil? - - case klass.to_s - when 'Boolean' - return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass) - when 'Float' - return data if data.instance_of?(Float) - when 'Integer' - return data if data.instance_of?(Integer) - when 'Time' - return Time.parse(data) - when 'Date' - return Date.parse(data) - when 'String' - return data if data.instance_of?(String) - when 'Object' # "type: object" - return data if data.instance_of?(Hash) - when /\AArray<(?.+)>\z/ # "type: array" - if data.instance_of?(Array) - sub_type = Regexp.last_match[:sub_type] - return data.map { |item| find_and_cast_into_type(sub_type, item) } - end - when /\AHash.+)>\z/ # "type: object" with "additionalProperties: { ... }" - if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) } - sub_type = Regexp.last_match[:sub_type] - return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) } + def valid?(value) + !value || allowable_values.include?(value) + end + end + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'id' => :'id', + :'description' => :'description', + :'name' => :'name', + :'company' => :'company', + :'phone' => :'phone', + :'email' => :'email', + :'metadata' => :'metadata', + :'address_line1' => :'address_line1', + :'address_line2' => :'address_line2', + :'address_city' => :'address_city', + :'address_state' => :'address_state', + :'address_zip' => :'address_zip', + :'address_country' => :'address_country', + :'object' => :'object', + :'date_created' => :'date_created', + :'date_modified' => :'date_modified', + :'deleted' => :'deleted', + :'recipient_moved' => :'recipient_moved' + } + end + + # Returns all the JSON keys this model knows about + def self.acceptable_attributes + attribute_map.values + end + + # Attribute type mapping. + def self.openapi_types + { + :'id' => :'String', + :'description' => :'String', + :'name' => :'String', + :'company' => :'String', + :'phone' => :'String', + :'email' => :'String', + :'metadata' => :'Hash', + :'address_line1' => :'String', + :'address_line2' => :'String', + :'address_city' => :'String', + :'address_state' => :'String', + :'address_zip' => :'String', + :'address_country' => :'CountryExtendedExpanded', + :'object' => :'String', + :'date_created' => :'Time', + :'date_modified' => :'Time', + :'deleted' => :'Boolean', + :'recipient_moved' => :'Boolean' + } + end + + # List of attributes with nullable: true + def self.openapi_nullable + Set.new([ + :'description', + :'name', + :'company', + :'phone', + :'email', + :'address_line2', + :'recipient_moved' + ]) + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + if (!attributes.is_a?(Hash)) + fail ArgumentError, "The input argument (attributes) must be a hash in `Lob::Address` initialize method" + end + + # check to see if the attribute exists and convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| + if (!self.class.attribute_map.key?(k.to_sym)) + fail ArgumentError, "`#{k}` is not a valid attribute in `Lob::Address`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect + end + h[k.to_sym] = v + } + + if attributes.key?(:'id') + self.id = attributes[:'id'] + end + + if attributes.key?(:'description') + self.description = attributes[:'description'] + end + + if attributes.key?(:'name') + self.name = attributes[:'name'] + end + + if attributes.key?(:'company') + self.company = attributes[:'company'] + end + + if attributes.key?(:'phone') + self.phone = attributes[:'phone'] + end + + if attributes.key?(:'email') + self.email = attributes[:'email'] + end + + if attributes.key?(:'metadata') + if (value = attributes[:'metadata']).is_a?(Hash) + self.metadata = value + end + end + + if attributes.key?(:'address_line1') + self.address_line1 = attributes[:'address_line1'] + end + + if attributes.key?(:'address_line2') + self.address_line2 = attributes[:'address_line2'] + end + + if attributes.key?(:'address_city') + self.address_city = attributes[:'address_city'] + end + + if attributes.key?(:'address_state') + self.address_state = attributes[:'address_state'] + end + + if attributes.key?(:'address_zip') + self.address_zip = attributes[:'address_zip'] + end + + if attributes.key?(:'address_country') + self.address_country = attributes[:'address_country'] + end + + if attributes.key?(:'object') + self.object = attributes[:'object'] + else + self.object = 'address' + end + + if attributes.key?(:'date_created') + self.date_created = attributes[:'date_created'] + end + + if attributes.key?(:'date_modified') + self.date_modified = attributes[:'date_modified'] + end + + if attributes.key?(:'deleted') + self.deleted = attributes[:'deleted'] + end + + if attributes.key?(:'recipient_moved') + self.recipient_moved = attributes[:'recipient_moved'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + pattern = Regexp.new(/^adr_[a-zA-Z0-9]+$/) + if !@id.nil? && @id !~ pattern + invalid_properties.push("invalid value for \"id\", must conform to the pattern #{pattern}.") + end + + if !@description.nil? && @description.to_s.length > 255 + invalid_properties.push('invalid value for "description", the character length must be smaller than or equal to 255.') + end + + if !@name.nil? && @name.to_s.length > 40 + invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 40.') + end + + if !@company.nil? && @company.to_s.length > 40 + invalid_properties.push('invalid value for "company", the character length must be smaller than or equal to 40.') + end + + if !@phone.nil? && @phone.to_s.length > 40 + invalid_properties.push('invalid value for "phone", the character length must be smaller than or equal to 40.') + end + + if !@email.nil? && @email.to_s.length > 100 + invalid_properties.push('invalid value for "email", the character length must be smaller than or equal to 100.') + end + + if !@address_line1.nil? && @address_line1.to_s.length > 64 + invalid_properties.push('invalid value for "address_line1", the character length must be smaller than or equal to 64.') + end + + if !@address_line2.nil? && @address_line2.to_s.length > 64 + invalid_properties.push('invalid value for "address_line2", the character length must be smaller than or equal to 64.') + end + + if !@address_city.nil? && @address_city.to_s.length > 200 + invalid_properties.push('invalid value for "address_city", the character length must be smaller than or equal to 200.') + end + + pattern = Regexp.new(/^[a-zA-Z]{2}$/) + if !@address_state.nil? && @address_state !~ pattern + invalid_properties.push("invalid value for \"address_state\", must conform to the pattern #{pattern}.") + end + + pattern = Regexp.new(/^\d{5}(-\d{4})?$/) + if !@address_zip.nil? && @address_zip !~ pattern + invalid_properties.push("invalid value for \"address_zip\", must conform to the pattern #{pattern}.") + end + + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + return false if !@id.nil? && @id !~ Regexp.new(/^adr_[a-zA-Z0-9]+$/) + return false if !@description.nil? && @description.to_s.length > 255 + return false if !@name.nil? && @name.to_s.length > 40 + return false if !@company.nil? && @company.to_s.length > 40 + return false if !@phone.nil? && @phone.to_s.length > 40 + return false if !@email.nil? && @email.to_s.length > 100 + return false if !@address_line1.nil? && @address_line1.to_s.length > 64 + return false if !@address_line2.nil? && @address_line2.to_s.length > 64 + return false if !@address_city.nil? && @address_city.to_s.length > 200 + return false if !@address_state.nil? && @address_state !~ Regexp.new(/^[a-zA-Z]{2}$/) + return false if !@address_zip.nil? && @address_zip !~ Regexp.new(/^\d{5}(-\d{4})?$/) + object_validator = EnumAttributeValidator.new('String', ["address"]) + return false unless object_validator.valid?(@object) + true + end + + # Custom attribute writer method with validation + # @param [Object] id Value to be assigned + def id=(id) + pattern = Regexp.new(/^adr_[a-zA-Z0-9]+$/) + if !id.nil? && id !~ pattern + fail ArgumentError, "invalid value for \"id\", must conform to the pattern #{pattern}." + end + + @id = id + end + + # Custom attribute writer method with validation + # @param [Object] description Value to be assigned + def description=(description) + if !description.nil? && description.to_s.length > 255 + fail ArgumentError, 'invalid value for "description", the character length must be smaller than or equal to 255.' + end + + @description = description + end + + # Custom attribute writer method with validation + # @param [Object] name Value to be assigned + def name=(name) + if !name.nil? && name.to_s.length > 40 + fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 40.' + end + + @name = name + end + + # Custom attribute writer method with validation + # @param [Object] company Value to be assigned + def company=(company) + if !company.nil? && company.to_s.length > 40 + fail ArgumentError, 'invalid value for "company", the character length must be smaller than or equal to 40.' + end + + @company = company + end + + # Custom attribute writer method with validation + # @param [Object] phone Value to be assigned + def phone=(phone) + if !phone.nil? && phone.to_s.length > 40 + fail ArgumentError, 'invalid value for "phone", the character length must be smaller than or equal to 40.' + end + + @phone = phone + end + + # Custom attribute writer method with validation + # @param [Object] email Value to be assigned + def email=(email) + if !email.nil? && email.to_s.length > 100 + fail ArgumentError, 'invalid value for "email", the character length must be smaller than or equal to 100.' + end + + @email = email + end + + # Custom attribute writer method with validation + # @param [Object] metadata Value to be assigned + def metadata=(metadata) + @metadata = metadata + end + + # Custom attribute writer method with validation + # @param [Object] address_line1 Value to be assigned + def address_line1=(address_line1) + if !address_line1.nil? && address_line1.to_s.length > 64 + fail ArgumentError, 'invalid value for "address_line1", the character length must be smaller than or equal to 64.' + end + + @address_line1 = address_line1 + end + + # Custom attribute writer method with validation + # @param [Object] address_line2 Value to be assigned + def address_line2=(address_line2) + if !address_line2.nil? && address_line2.to_s.length > 64 + fail ArgumentError, 'invalid value for "address_line2", the character length must be smaller than or equal to 64.' + end + + @address_line2 = address_line2 + end + + # Custom attribute writer method with validation + # @param [Object] address_city Value to be assigned + def address_city=(address_city) + if !address_city.nil? && address_city.to_s.length > 200 + fail ArgumentError, 'invalid value for "address_city", the character length must be smaller than or equal to 200.' + end + + @address_city = address_city + end + + # Custom attribute writer method with validation + # @param [Object] address_state Value to be assigned + def address_state=(address_state) + pattern = Regexp.new(/^[a-zA-Z]{2}$/) + if !address_state.nil? && address_state !~ pattern + fail ArgumentError, "invalid value for \"address_state\", must conform to the pattern #{pattern}." + end + + @address_state = address_state + end + + # Custom attribute writer method with validation + # @param [Object] address_zip Value to be assigned + def address_zip=(address_zip) + pattern = Regexp.new(/^\d{5}(-\d{4})?$/) + if !address_zip.nil? && address_zip !~ pattern + fail ArgumentError, "invalid value for \"address_zip\", must conform to the pattern #{pattern}." + end + + @address_zip = address_zip + end + + # Custom attribute writer method checking allowed values (enum). + # @param [Object] object Object to be assigned + def object=(object) + validator = EnumAttributeValidator.new('String', ["address"]) + unless validator.valid?(object) + fail ArgumentError, "invalid value for \"object\", must be one of #{validator.allowable_values}." + end + @object = object + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + id == o.id && + description == o.description && + name == o.name && + company == o.company && + phone == o.phone && + email == o.email && + metadata == o.metadata && + address_line1 == o.address_line1 && + address_line2 == o.address_line2 && + address_city == o.address_city && + address_state == o.address_state && + address_zip == o.address_zip && + address_country == o.address_country && + object == o.object && + date_created == o.date_created && + date_modified == o.date_modified && + deleted == o.deleted && + recipient_moved == o.recipient_moved + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Integer] Hash code + def hash + [id, description, name, company, phone, email, metadata, address_line1, address_line2, address_city, address_state, address_zip, address_country, object, date_created, date_modified, deleted, recipient_moved].hash + end + + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def self.build_from_hash(attributes) + new.build_from_hash(attributes) + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + attributes = attributes.transform_keys(&:to_sym) + self.class.openapi_types.each_pair do |key, type| + if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key) + self.send("#{key}=", nil) # // guardrails-disable-line + elsif type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) # // guardrails-disable-line end - else # model - const = Lob.const_get(klass) - if const - if const.respond_to?(:openapi_one_of) # nested oneOf model - model = const.build(data) - return model if model - else - # raise if data contains keys that are not known to the model - raise unless (data.keys - const.acceptable_attributes).empty? - model = const.build_from_hash(data) - return model if model && model.valid? + elsif !attributes[self.class.attribute_map[key]].nil? && type.kind_of?(Array) + for base_type in type do + res = _deserialize(base_type, attributes[self.class.attribute_map[key]]) + if !res.nil? + self.send("#{key}=", res) # // guardrails-disable-line + break end end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) # // guardrails-disable-line + end + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :Time + Time.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :Boolean + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + # models (e.g. Pet) or oneOf + klass = Lob.const_get(type) + klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) # // guardrails-disable-line + if value.nil? + is_nullable = self.class.openapi_nullable.include?(attr) + next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) end - raise # if no match by now, raise - rescue - raise SchemaMismatchError, "#{data} doesn't match the #{klass} type" + hash[param] = _to_hash(value) end + hash end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end end diff --git a/lib/lob/models/address_deletion.rb b/lib/lob/models/address_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/address_domestic.rb b/lib/lob/models/address_domestic.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/address_domestic_expanded.rb b/lib/lob/models/address_domestic_expanded.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/address_editable.rb b/lib/lob/models/address_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/address_list.rb b/lib/lob/models/address_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/bank_account.rb b/lib/lob/models/bank_account.rb old mode 100755 new mode 100644 index 77d08ac..b0cc169 --- a/lib/lob/models/bank_account.rb +++ b/lib/lob/models/bank_account.rb @@ -257,7 +257,7 @@ def list_invalid_properties invalid_properties.push("invalid value for \"id\", must conform to the pattern #{pattern}.") end - pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(''|_signature)(.pdf|_thumb_[a-z]+_[0-9]+.png|.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !@signature_url.nil? && @signature_url !~ pattern invalid_properties.push("invalid value for \"signature_url\", must conform to the pattern #{pattern}.") end @@ -293,7 +293,7 @@ def valid? return false if @signatory.to_s.length > 30 return false if @id.nil? return false if @id !~ Regexp.new(/^bank_[a-zA-Z0-9]+$/) - return false if !@signature_url.nil? && @signature_url !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(''|_signature)(.pdf|_thumb_[a-z]+_[0-9]+.png|.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) + return false if !@signature_url.nil? && @signature_url !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) return false if @date_created.nil? return false if @date_modified.nil? return false if @object.nil? @@ -392,7 +392,7 @@ def id=(id) # Custom attribute writer method with validation # @param [Object] signature_url Value to be assigned def signature_url=(signature_url) - pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(''|_signature)(.pdf|_thumb_[a-z]+_[0-9]+.png|.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !signature_url.nil? && signature_url !~ pattern fail ArgumentError, "invalid value for \"signature_url\", must conform to the pattern #{pattern}." end diff --git a/lib/lob/models/bank_account_deletion.rb b/lib/lob/models/bank_account_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/bank_account_list.rb b/lib/lob/models/bank_account_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/bank_account_verify.rb b/lib/lob/models/bank_account_verify.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/bank_account_writable.rb b/lib/lob/models/bank_account_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/bank_type_enum.rb b/lib/lob/models/bank_type_enum.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/billing_group.rb b/lib/lob/models/billing_group.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/billing_group_editable.rb b/lib/lob/models/billing_group_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/billing_group_list.rb b/lib/lob/models/billing_group_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/buckslip.rb b/lib/lob/models/buckslip.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/buckslip_deletion.rb b/lib/lob/models/buckslip_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/buckslip_editable.rb b/lib/lob/models/buckslip_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/buckslip_order.rb b/lib/lob/models/buckslip_order.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/buckslip_order_editable.rb b/lib/lob/models/buckslip_order_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/buckslip_orders_list.rb b/lib/lob/models/buckslip_orders_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/buckslip_updatable.rb b/lib/lob/models/buckslip_updatable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/buckslips_list.rb b/lib/lob/models/buckslips_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/bulk_error.rb b/lib/lob/models/bulk_error.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/bulk_error_properties.rb b/lib/lob/models/bulk_error_properties.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/campaign.rb b/lib/lob/models/campaign.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/campaign_creative.rb b/lib/lob/models/campaign_creative.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/campaign_deletion.rb b/lib/lob/models/campaign_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/campaign_updatable.rb b/lib/lob/models/campaign_updatable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/campaign_writable.rb b/lib/lob/models/campaign_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/campaigns_list.rb b/lib/lob/models/campaigns_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/card.rb b/lib/lob/models/card.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/card_deletion.rb b/lib/lob/models/card_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/card_editable.rb b/lib/lob/models/card_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/card_list.rb b/lib/lob/models/card_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/card_order.rb b/lib/lob/models/card_order.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/card_order_editable.rb b/lib/lob/models/card_order_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/card_order_list.rb b/lib/lob/models/card_order_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/card_updatable.rb b/lib/lob/models/card_updatable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/check.rb b/lib/lob/models/check.rb old mode 100755 new mode 100644 index 9a8dc75..ea2b285 --- a/lib/lob/models/check.rb +++ b/lib/lob/models/check.rb @@ -402,7 +402,7 @@ def list_invalid_properties invalid_properties.push('invalid value for "url", url cannot be nil.') end - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if @url !~ pattern invalid_properties.push("invalid value for \"url\", must conform to the pattern #{pattern}.") end @@ -447,7 +447,7 @@ def valid? return false if !@check_bottom_template_version_id.nil? && @check_bottom_template_version_id !~ Regexp.new(/^vrsn_[a-zA-Z0-9]+$/) return false if !@attachment_template_version_id.nil? && @attachment_template_version_id !~ Regexp.new(/^vrsn_[a-zA-Z0-9]+$/) return false if @url.nil? - return false if @url !~ Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + return false if @url !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) return false if @carrier.nil? carrier_validator = EnumAttributeValidator.new('String', ["USPS"]) return false unless carrier_validator.valid?(@carrier) @@ -605,7 +605,7 @@ def url=(url) fail ArgumentError, 'url cannot be nil' end - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if url !~ pattern fail ArgumentError, "invalid value for \"url\", must conform to the pattern #{pattern}." end diff --git a/lib/lob/models/check_deletion.rb b/lib/lob/models/check_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/check_editable.rb b/lib/lob/models/check_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/check_list.rb b/lib/lob/models/check_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/chk_use_type.rb b/lib/lob/models/chk_use_type.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/cmp_schedule_type.rb b/lib/lob/models/cmp_schedule_type.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/cmp_use_type.rb b/lib/lob/models/cmp_use_type.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/country_extended.rb b/lib/lob/models/country_extended.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/country_extended_expanded.rb b/lib/lob/models/country_extended_expanded.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/creative_patch.rb b/lib/lob/models/creative_patch.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/creative_response.rb b/lib/lob/models/creative_response.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/creative_writable.rb b/lib/lob/models/creative_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/custom_envelope_returned.rb b/lib/lob/models/custom_envelope_returned.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/deliverability_analysis.rb b/lib/lob/models/deliverability_analysis.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/dpv_footnote.rb b/lib/lob/models/dpv_footnote.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/engine_html.rb b/lib/lob/models/engine_html.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/event_type.rb b/lib/lob/models/event_type.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/events.rb b/lib/lob/models/events.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/export.rb b/lib/lob/models/export.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/export_model.rb b/lib/lob/models/export_model.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/geocode_addresses.rb b/lib/lob/models/geocode_addresses.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/geocode_components.rb b/lib/lob/models/geocode_components.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/http_validation_error.rb b/lib/lob/models/http_validation_error.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/identity_validation.rb b/lib/lob/models/identity_validation.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/inline_object.rb b/lib/lob/models/inline_object.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/intl_autocompletions.rb b/lib/lob/models/intl_autocompletions.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/intl_autocompletions_writable.rb b/lib/lob/models/intl_autocompletions_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/intl_components.rb b/lib/lob/models/intl_components.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/intl_suggestions.rb b/lib/lob/models/intl_suggestions.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/intl_verification.rb b/lib/lob/models/intl_verification.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/intl_verification_or_error.rb b/lib/lob/models/intl_verification_or_error.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/intl_verification_writable.rb b/lib/lob/models/intl_verification_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/intl_verifications.rb b/lib/lob/models/intl_verifications.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/intl_verifications_payload.rb b/lib/lob/models/intl_verifications_payload.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/letter.rb b/lib/lob/models/letter.rb old mode 100755 new mode 100644 index 0ee7778..1213533 --- a/lib/lob/models/letter.rb +++ b/lib/lob/models/letter.rb @@ -401,7 +401,7 @@ def list_invalid_properties invalid_properties.push("invalid value for \"template_version_id\", must conform to the pattern #{pattern}.") end - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !@url.nil? && @url !~ pattern invalid_properties.push("invalid value for \"url\", must conform to the pattern #{pattern}.") end @@ -434,7 +434,7 @@ def valid? return false if @id !~ Regexp.new(/^ltr_[a-zA-Z0-9]+$/) return false if !@template_id.nil? && @template_id !~ Regexp.new(/^tmpl_[a-zA-Z0-9]+$/) return false if !@template_version_id.nil? && @template_version_id !~ Regexp.new(/^vrsn_[a-zA-Z0-9]+$/) - return false if !@url.nil? && @url !~ Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + return false if !@url.nil? && @url !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) return false if @object.nil? object_validator = EnumAttributeValidator.new('String', ["letter"]) return false unless object_validator.valid?(@object) @@ -495,7 +495,7 @@ def template_version_id=(template_version_id) # Custom attribute writer method with validation # @param [Object] url Value to be assigned def url=(url) - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !url.nil? && url !~ pattern fail ArgumentError, "invalid value for \"url\", must conform to the pattern #{pattern}." end diff --git a/lib/lob/models/letter_custom_envelope.rb b/lib/lob/models/letter_custom_envelope.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/letter_deletion.rb b/lib/lob/models/letter_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/letter_details_returned.rb b/lib/lob/models/letter_details_returned.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/letter_details_writable.rb b/lib/lob/models/letter_details_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/letter_editable.rb b/lib/lob/models/letter_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/letter_list.rb b/lib/lob/models/letter_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/lob_confidence_score.rb b/lib/lob/models/lob_confidence_score.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/lob_error.rb b/lib/lob/models/lob_error.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/location.rb b/lib/lob/models/location.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/location_analysis.rb b/lib/lob/models/location_analysis.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/ltr_use_type.rb b/lib/lob/models/ltr_use_type.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/mail_type.rb b/lib/lob/models/mail_type.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/multi_line_address.rb b/lib/lob/models/multi_line_address.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/multiple_components.rb b/lib/lob/models/multiple_components.rb old mode 100755 new mode 100644 index b42ea4c..8ad695d --- a/lib/lob/models/multiple_components.rb +++ b/lib/lob/models/multiple_components.rb @@ -1,7 +1,7 @@ =begin #Lob -#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? The version of the OpenAPI document: 1.3.0 Contact: lob-openapi@lob.com @@ -18,13 +18,13 @@ class MultipleComponents # The intended recipient, typically a person's or firm's name. attr_accessor :recipient - # The primary delivery line (usually the street address) of the address. Combination of the following applicable `components`: * `primary_number` * `street_predirection` * `street_name` * `street_suffix` * `street_postdirection` * `secondary_designator` * `secondary_number` * `pmb_designator` * `pmb_number` + # The primary delivery line (usually the street address) of the address. Combination of the following applicable `components`: * `primary_number` * `street_predirection` * `street_name` * `street_suffix` * `street_postdirection` * `secondary_designator` * `secondary_number` * `pmb_designator` * `pmb_number` attr_accessor :primary_line - # The secondary delivery line of the address. This field is typically empty but may contain information if `primary_line` is too long. + # The secondary delivery line of the address. This field is typically empty but may contain information if `primary_line` is too long. attr_accessor :secondary_line - # Only present for addresses in Puerto Rico. An urbanization refers to an area, sector, or development within a city. See [USPS documentation](https://pe.usps.com/text/pub28/28api_008.htm#:~:text=I51.,-4%20Urbanizations&text=In%20Puerto%20Rico%2C%20identical%20street,placed%20before%20the%20urbanization%20name.) for clarification. + # Only present for addresses in Puerto Rico. An urbanization refers to an area, sector, or development within a city. See [USPS documentation](https://pe.usps.com/text/pub28/28api_008.htm#:~:text=I51.,-4%20Urbanizations&text=In%20Puerto%20Rico%2C%20identical%20street,placed%20before%20the%20urbanization%20name.) for clarification. attr_accessor :urbanization attr_accessor :city @@ -35,7 +35,7 @@ class MultipleComponents # Required if `city` and `state` are not passed in. If included, must be formatted as a US ZIP or ZIP+4 (e.g. `94107`, `941072282`, `94107-2282`). attr_accessor :zip_code - # ID that is returned in the response body for the verification + # ID that is returned in the response body for the verification attr_accessor :transient_id # Attribute mapping from ruby-style variable name to JSON key. diff --git a/lib/lob/models/multiple_components_intl.rb b/lib/lob/models/multiple_components_intl.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/multiple_components_list.rb b/lib/lob/models/multiple_components_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/optional_address_column_mapping.rb b/lib/lob/models/optional_address_column_mapping.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/placeholder_model.rb b/lib/lob/models/placeholder_model.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/postcard.rb b/lib/lob/models/postcard.rb old mode 100755 new mode 100644 index 3b4df26..4689978 --- a/lib/lob/models/postcard.rb +++ b/lib/lob/models/postcard.rb @@ -334,7 +334,7 @@ def list_invalid_properties invalid_properties.push('invalid value for "url", url cannot be nil.') end - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if @url !~ pattern invalid_properties.push("invalid value for \"url\", must conform to the pattern #{pattern}.") end @@ -360,7 +360,7 @@ def valid? object_validator = EnumAttributeValidator.new('String', ["postcard"]) return false unless object_validator.valid?(@object) return false if @url.nil? - return false if @url !~ Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + return false if @url !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) return false if !@description.nil? && @description.to_s.length > 255 true end @@ -451,7 +451,7 @@ def url=(url) fail ArgumentError, 'url cannot be nil' end - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if url !~ pattern fail ArgumentError, "invalid value for \"url\", must conform to the pattern #{pattern}." end diff --git a/lib/lob/models/postcard_deletion.rb b/lib/lob/models/postcard_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/postcard_details_returned.rb b/lib/lob/models/postcard_details_returned.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/postcard_details_writable.rb b/lib/lob/models/postcard_details_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/postcard_editable.rb b/lib/lob/models/postcard_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/postcard_list.rb b/lib/lob/models/postcard_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/postcard_size.rb b/lib/lob/models/postcard_size.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/psc_use_type.rb b/lib/lob/models/psc_use_type.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/qr_code.rb b/lib/lob/models/qr_code.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/required_address_column_mapping.rb b/lib/lob/models/required_address_column_mapping.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/return_envelope.rb b/lib/lob/models/return_envelope.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/reverse_geocode.rb b/lib/lob/models/reverse_geocode.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/self_mailer.rb b/lib/lob/models/self_mailer.rb old mode 100755 new mode 100644 index 3b09996..0e29423 --- a/lib/lob/models/self_mailer.rb +++ b/lib/lob/models/self_mailer.rb @@ -284,7 +284,7 @@ def list_invalid_properties invalid_properties.push('invalid value for "url", url cannot be nil.') end - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if @url !~ pattern invalid_properties.push("invalid value for \"url\", must conform to the pattern #{pattern}.") end @@ -305,7 +305,7 @@ def valid? object_validator = EnumAttributeValidator.new('String', ["self_mailer"]) return false unless object_validator.valid?(@object) return false if @url.nil? - return false if @url !~ Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + return false if @url !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) true end @@ -407,7 +407,7 @@ def url=(url) fail ArgumentError, 'url cannot be nil' end - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if url !~ pattern fail ArgumentError, "invalid value for \"url\", must conform to the pattern #{pattern}." end diff --git a/lib/lob/models/self_mailer_deletion.rb b/lib/lob/models/self_mailer_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/self_mailer_editable.rb b/lib/lob/models/self_mailer_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/self_mailer_list.rb b/lib/lob/models/self_mailer_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/self_mailer_size.rb b/lib/lob/models/self_mailer_size.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/sfm_use_type.rb b/lib/lob/models/sfm_use_type.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/snap_pack.rb b/lib/lob/models/snap_pack.rb new file mode 100644 index 0000000..3e9a6d3 --- /dev/null +++ b/lib/lob/models/snap_pack.rb @@ -0,0 +1,584 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'date' +require 'time' + +module Lob + class SnapPack + # Unique identifier prefixed with `ord_`. + attr_accessor :id + + attr_accessor :to + + attr_accessor :from + + attr_accessor :size + + # An internal description that identifies this resource. Must be no longer than 255 characters. + attr_accessor :description + + # Use metadata to store custom information for tagging and labeling back to your internal systems. Must be an object with up to 20 key-value pairs. Keys must be at most 40 characters and values must be at most 500 characters. Neither can contain the characters `\"` and `\\`. i.e. '{\"customer_id\" : \"NEWYORK2015\"}' Nested objects are not supported. See [Metadata](#section/Metadata) for more information. + attr_accessor :metadata + + attr_accessor :mail_type + + # You can input a merge variable payload object to your template to render dynamic content. For example, if you have a template like: `{{variable_name}}`, pass in `{\"variable_name\": \"Harry\"}` to render `Harry`. `merge_variables` must be an object. Any type of value is accepted as long as the object is valid JSON; you can use `strings`, `numbers`, `booleans`, `arrays`, `objects`, or `null`. The max length of the object is 25,000 characters. If you call `JSON.stringify` on your object, it can be no longer than 25,000 characters. Your variable names cannot contain any whitespace or any of the following special characters: `!`, `\"`, `#`, `%`, `&`, `'`, `(`, `)`, `*`, `+`, `,`, `/`, `;`, `<`, `=`, `>`, `@`, `[`, `\\`, `]`, `^`, `` ` ``, `{`, `|`, `}`, `~`. More instructions can be found in [our guide to using html and merge variables](https://lob.com/resources/guides/general/using-html-and-merge-variables). Depending on your [Merge Variable strictness](https://dashboard.lob.com/#/settings/account) setting, if you define variables in your HTML but do not pass them here, you will either receive an error or the variable will render as an empty string. + attr_accessor :merge_variables + + # A timestamp in ISO 8601 format which specifies a date after the current time and up to 180 days in the future to send the letter off for production. Setting a send date overrides the default [cancellation window](#section/Cancellation-Windows) applied to the mailpiece. Until the `send_date` has passed, the mailpiece can be canceled. If a date in the format `2017-11-01` is passed, it will evaluate to midnight UTC of that date (`2017-11-01T00:00:00.000Z`). If a datetime is passed, that exact time will be used. A `send_date` passed with no time zone will default to UTC, while a `send_date` passed with a time zone will be converted to UTC. + attr_accessor :send_date + + # The unique ID of the HTML template used for the outside of the snap pack. + attr_accessor :outside_template_id + + # The unique ID of the HTML template used for the inside of the snap pack. + attr_accessor :inside_template_id + + # The unique ID of the specific version of the HTML template used for the outside of the snap pack. + attr_accessor :outside_template_version_id + + # The unique ID of the specific version of the HTML template used for the inside of the snap pack. + attr_accessor :inside_template_version_id + + # Value is resource type. + attr_accessor :object + + # An array of certified tracking events ordered by ascending `time`. Not populated in test mode. + attr_accessor :tracking_events + + # A [signed link](#section/Asset-URLs) served over HTTPS. The link returned will expire in 30 days to prevent mis-sharing. Each time a GET request is initiated, a new signed URL will be generated. + attr_accessor :url + + attr_accessor :use_type + + class EnumAttributeValidator + attr_reader :datatype + attr_reader :allowable_values + + def initialize(datatype, allowable_values) + @allowable_values = allowable_values.map do |value| + case datatype.to_s + when /Integer/i + value.to_i + when /Float/i + value.to_f + else + value + end + end + end + + def valid?(value) + !value || allowable_values.include?(value) + end + end + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'id' => :'id', + :'to' => :'to', + :'from' => :'from', + :'size' => :'size', + :'description' => :'description', + :'metadata' => :'metadata', + :'mail_type' => :'mail_type', + :'merge_variables' => :'merge_variables', + :'send_date' => :'send_date', + :'outside_template_id' => :'outside_template_id', + :'inside_template_id' => :'inside_template_id', + :'outside_template_version_id' => :'outside_template_version_id', + :'inside_template_version_id' => :'inside_template_version_id', + :'object' => :'object', + :'tracking_events' => :'tracking_events', + :'url' => :'url', + :'use_type' => :'use_type' + } + end + + # Returns all the JSON keys this model knows about + def self.acceptable_attributes + attribute_map.values + end + + # Attribute type mapping. + def self.openapi_types + { + :'id' => :'String', + :'to' => Array[:'Address', :'String'], + :'from' => Array[:'AddressDomesticExpanded', :'String'], + :'size' => :'SnapPackSize', + :'description' => :'String', + :'metadata' => :'Hash', + :'mail_type' => :'MailType', + :'merge_variables' => :'Object', + :'send_date' => :'Time', + :'outside_template_id' => :'String', + :'inside_template_id' => :'String', + :'outside_template_version_id' => :'String', + :'inside_template_version_id' => :'String', + :'object' => :'String', + :'tracking_events' => :'Array', + :'url' => :'String', + :'use_type' => :'SnpUseType' + } + end + + # List of attributes with nullable: true + def self.openapi_nullable + Set.new([ + :'to', + :'from', + :'description', + :'merge_variables', + :'outside_template_id', + :'inside_template_id', + :'outside_template_version_id', + :'inside_template_version_id', + :'use_type' + ]) + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + if (!attributes.is_a?(Hash)) + fail ArgumentError, "The input argument (attributes) must be a hash in `Lob::SnapPack` initialize method" + end + + # check to see if the attribute exists and convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| + if (!self.class.attribute_map.key?(k.to_sym)) + fail ArgumentError, "`#{k}` is not a valid attribute in `Lob::SnapPack`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect + end + h[k.to_sym] = v + } + + if attributes.key?(:'id') + self.id = attributes[:'id'] + end + + if attributes.key?(:'to') + self.to = attributes[:'to'] + end + + if attributes.key?(:'from') + self.from = attributes[:'from'] + end + + if attributes.key?(:'size') + self.size = attributes[:'size'] + else + self.size = '6x18_bifold' + end + + if attributes.key?(:'description') + self.description = attributes[:'description'] + end + + if attributes.key?(:'metadata') + if (value = attributes[:'metadata']).is_a?(Hash) + self.metadata = value + end + end + + if attributes.key?(:'mail_type') + self.mail_type = attributes[:'mail_type'] + else + self.mail_type = 'usps_first_class' + end + + if attributes.key?(:'merge_variables') + self.merge_variables = attributes[:'merge_variables'] + end + + if attributes.key?(:'send_date') + self.send_date = attributes[:'send_date'] + end + + if attributes.key?(:'outside_template_id') + self.outside_template_id = attributes[:'outside_template_id'] + end + + if attributes.key?(:'inside_template_id') + self.inside_template_id = attributes[:'inside_template_id'] + end + + if attributes.key?(:'outside_template_version_id') + self.outside_template_version_id = attributes[:'outside_template_version_id'] + end + + if attributes.key?(:'inside_template_version_id') + self.inside_template_version_id = attributes[:'inside_template_version_id'] + end + + if attributes.key?(:'object') + self.object = attributes[:'object'] + else + self.object = 'snap_pack' + end + + if attributes.key?(:'tracking_events') + if (value = attributes[:'tracking_events']).is_a?(Array) + self.tracking_events = value + end + end + + if attributes.key?(:'url') + self.url = attributes[:'url'] + end + + if attributes.key?(:'use_type') + self.use_type = attributes[:'use_type'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + if @id.nil? + invalid_properties.push('invalid value for "id", id cannot be nil.') + end + + pattern = Regexp.new(/^ord_[a-zA-Z0-9]+$/) + if @id !~ pattern + invalid_properties.push("invalid value for \"id\", must conform to the pattern #{pattern}.") + end + + if !@description.nil? && @description.to_s.length > 255 + invalid_properties.push('invalid value for "description", the character length must be smaller than or equal to 255.') + end + + pattern = Regexp.new(/^tmpl_[a-zA-Z0-9]+$/) + if !@outside_template_id.nil? && @outside_template_id !~ pattern + invalid_properties.push("invalid value for \"outside_template_id\", must conform to the pattern #{pattern}.") + end + + pattern = Regexp.new(/^tmpl_[a-zA-Z0-9]+$/) + if !@inside_template_id.nil? && @inside_template_id !~ pattern + invalid_properties.push("invalid value for \"inside_template_id\", must conform to the pattern #{pattern}.") + end + + pattern = Regexp.new(/^vrsn_[a-zA-Z0-9]+$/) + if !@outside_template_version_id.nil? && @outside_template_version_id !~ pattern + invalid_properties.push("invalid value for \"outside_template_version_id\", must conform to the pattern #{pattern}.") + end + + pattern = Regexp.new(/^vrsn_[a-zA-Z0-9]+$/) + if !@inside_template_version_id.nil? && @inside_template_version_id !~ pattern + invalid_properties.push("invalid value for \"inside_template_version_id\", must conform to the pattern #{pattern}.") + end + + if @url.nil? + invalid_properties.push('invalid value for "url", url cannot be nil.') + end + + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) + if @url !~ pattern + invalid_properties.push("invalid value for \"url\", must conform to the pattern #{pattern}.") + end + + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + return false if @id.nil? + return false if @id !~ Regexp.new(/^ord_[a-zA-Z0-9]+$/) + return false if !@description.nil? && @description.to_s.length > 255 + return false if !@outside_template_id.nil? && @outside_template_id !~ Regexp.new(/^tmpl_[a-zA-Z0-9]+$/) + return false if !@inside_template_id.nil? && @inside_template_id !~ Regexp.new(/^tmpl_[a-zA-Z0-9]+$/) + return false if !@outside_template_version_id.nil? && @outside_template_version_id !~ Regexp.new(/^vrsn_[a-zA-Z0-9]+$/) + return false if !@inside_template_version_id.nil? && @inside_template_version_id !~ Regexp.new(/^vrsn_[a-zA-Z0-9]+$/) + object_validator = EnumAttributeValidator.new('String', ["snap_pack"]) + return false unless object_validator.valid?(@object) + return false if @url.nil? + return false if @url !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) + true + end + + # Custom attribute writer method with validation + # @param [Object] id Value to be assigned + def id=(id) + if id.nil? + fail ArgumentError, 'id cannot be nil' + end + + pattern = Regexp.new(/^ord_[a-zA-Z0-9]+$/) + if id !~ pattern + fail ArgumentError, "invalid value for \"id\", must conform to the pattern #{pattern}." + end + + @id = id + end + + # Custom attribute writer method with validation + # @param [Object] description Value to be assigned + def description=(description) + if !description.nil? && description.to_s.length > 255 + fail ArgumentError, 'invalid value for "description", the character length must be smaller than or equal to 255.' + end + + @description = description + end + + # Custom attribute writer method with validation + # @param [Object] metadata Value to be assigned + def metadata=(metadata) + @metadata = metadata + end + + # Custom attribute writer method with validation + # @param [Object] merge_variables Value to be assigned + def merge_variables=(merge_variables) + @merge_variables = merge_variables + end + + # Custom attribute writer method with validation + # @param [Object] outside_template_id Value to be assigned + def outside_template_id=(outside_template_id) + pattern = Regexp.new(/^tmpl_[a-zA-Z0-9]+$/) + if !outside_template_id.nil? && outside_template_id !~ pattern + fail ArgumentError, "invalid value for \"outside_template_id\", must conform to the pattern #{pattern}." + end + + @outside_template_id = outside_template_id + end + + # Custom attribute writer method with validation + # @param [Object] inside_template_id Value to be assigned + def inside_template_id=(inside_template_id) + pattern = Regexp.new(/^tmpl_[a-zA-Z0-9]+$/) + if !inside_template_id.nil? && inside_template_id !~ pattern + fail ArgumentError, "invalid value for \"inside_template_id\", must conform to the pattern #{pattern}." + end + + @inside_template_id = inside_template_id + end + + # Custom attribute writer method with validation + # @param [Object] outside_template_version_id Value to be assigned + def outside_template_version_id=(outside_template_version_id) + pattern = Regexp.new(/^vrsn_[a-zA-Z0-9]+$/) + if !outside_template_version_id.nil? && outside_template_version_id !~ pattern + fail ArgumentError, "invalid value for \"outside_template_version_id\", must conform to the pattern #{pattern}." + end + + @outside_template_version_id = outside_template_version_id + end + + # Custom attribute writer method with validation + # @param [Object] inside_template_version_id Value to be assigned + def inside_template_version_id=(inside_template_version_id) + pattern = Regexp.new(/^vrsn_[a-zA-Z0-9]+$/) + if !inside_template_version_id.nil? && inside_template_version_id !~ pattern + fail ArgumentError, "invalid value for \"inside_template_version_id\", must conform to the pattern #{pattern}." + end + + @inside_template_version_id = inside_template_version_id + end + + # Custom attribute writer method checking allowed values (enum). + # @param [Object] object Object to be assigned + def object=(object) + validator = EnumAttributeValidator.new('String', ["snap_pack"]) + unless validator.valid?(object) + fail ArgumentError, "invalid value for \"object\", must be one of #{validator.allowable_values}." + end + @object = object + end + + # Custom attribute writer method with validation + # @param [Object] url Value to be assigned + def url=(url) + if url.nil? + fail ArgumentError, 'url cannot be nil' + end + + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) + if url !~ pattern + fail ArgumentError, "invalid value for \"url\", must conform to the pattern #{pattern}." + end + + @url = url + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + id == o.id && + to == o.to && + from == o.from && + size == o.size && + description == o.description && + metadata == o.metadata && + mail_type == o.mail_type && + merge_variables == o.merge_variables && + send_date == o.send_date && + outside_template_id == o.outside_template_id && + inside_template_id == o.inside_template_id && + outside_template_version_id == o.outside_template_version_id && + inside_template_version_id == o.inside_template_version_id && + object == o.object && + tracking_events == o.tracking_events && + url == o.url && + use_type == o.use_type + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Integer] Hash code + def hash + [id, to, from, size, description, metadata, mail_type, merge_variables, send_date, outside_template_id, inside_template_id, outside_template_version_id, inside_template_version_id, object, tracking_events, url, use_type].hash + end + + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def self.build_from_hash(attributes) + new.build_from_hash(attributes) + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + attributes = attributes.transform_keys(&:to_sym) + self.class.openapi_types.each_pair do |key, type| + if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key) + self.send("#{key}=", nil) # // guardrails-disable-line + elsif type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) # // guardrails-disable-line + end + elsif !attributes[self.class.attribute_map[key]].nil? && type.kind_of?(Array) + for base_type in type do + res = _deserialize(base_type, attributes[self.class.attribute_map[key]]) + if !res.nil? + self.send("#{key}=", res) # // guardrails-disable-line + break + end + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) # // guardrails-disable-line + end + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :Time + Time.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :Boolean + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + # models (e.g. Pet) or oneOf + klass = Lob.const_get(type) + klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) # // guardrails-disable-line + if value.nil? + is_nullable = self.class.openapi_nullable.include?(attr) + next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) + end + + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + + end + +end diff --git a/lib/lob/models/snap_pack_deletion.rb b/lib/lob/models/snap_pack_deletion.rb new file mode 100644 index 0000000..87f4971 --- /dev/null +++ b/lib/lob/models/snap_pack_deletion.rb @@ -0,0 +1,303 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'date' +require 'time' + +module Lob + # Lob uses RESTful HTTP response codes to indicate success or failure of an API request. In general, 2xx indicates success, 4xx indicate an input error, and 5xx indicates an error on Lob's end. + class SnapPackDeletion + # Unique identifier prefixed with `ord_`. + attr_accessor :id + + # Only returned if the resource has been successfully deleted. + attr_accessor :deleted + + # Value is type of resource. + attr_accessor :object + + class EnumAttributeValidator + attr_reader :datatype + attr_reader :allowable_values + + def initialize(datatype, allowable_values) + @allowable_values = allowable_values.map do |value| + case datatype.to_s + when /Integer/i + value.to_i + when /Float/i + value.to_f + else + value + end + end + end + + def valid?(value) + !value || allowable_values.include?(value) + end + end + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'id' => :'id', + :'deleted' => :'deleted', + :'object' => :'object' + } + end + + # Returns all the JSON keys this model knows about + def self.acceptable_attributes + attribute_map.values + end + + # Attribute type mapping. + def self.openapi_types + { + :'id' => :'String', + :'deleted' => :'Boolean', + :'object' => :'String' + } + end + + # List of attributes with nullable: true + def self.openapi_nullable + Set.new([ + ]) + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + if (!attributes.is_a?(Hash)) + fail ArgumentError, "The input argument (attributes) must be a hash in `Lob::SnapPackDeletion` initialize method" + end + + # check to see if the attribute exists and convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| + if (!self.class.attribute_map.key?(k.to_sym)) + fail ArgumentError, "`#{k}` is not a valid attribute in `Lob::SnapPackDeletion`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect + end + h[k.to_sym] = v + } + + if attributes.key?(:'id') + self.id = attributes[:'id'] + end + + if attributes.key?(:'deleted') + self.deleted = attributes[:'deleted'] + end + + if attributes.key?(:'object') + self.object = attributes[:'object'] + else + self.object = 'snap_pack_deleted' + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + pattern = Regexp.new(/^ord_[a-zA-Z0-9]+$/) + if !@id.nil? && @id !~ pattern + invalid_properties.push("invalid value for \"id\", must conform to the pattern #{pattern}.") + end + + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + return false if !@id.nil? && @id !~ Regexp.new(/^ord_[a-zA-Z0-9]+$/) + object_validator = EnumAttributeValidator.new('String', ["snap_pack_deleted"]) + return false unless object_validator.valid?(@object) + true + end + + # Custom attribute writer method with validation + # @param [Object] id Value to be assigned + def id=(id) + pattern = Regexp.new(/^ord_[a-zA-Z0-9]+$/) + if !id.nil? && id !~ pattern + fail ArgumentError, "invalid value for \"id\", must conform to the pattern #{pattern}." + end + + @id = id + end + + # Custom attribute writer method checking allowed values (enum). + # @param [Object] object Object to be assigned + def object=(object) + validator = EnumAttributeValidator.new('String', ["snap_pack_deleted"]) + unless validator.valid?(object) + fail ArgumentError, "invalid value for \"object\", must be one of #{validator.allowable_values}." + end + @object = object + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + id == o.id && + deleted == o.deleted && + object == o.object + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Integer] Hash code + def hash + [id, deleted, object].hash + end + + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def self.build_from_hash(attributes) + new.build_from_hash(attributes) + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + attributes = attributes.transform_keys(&:to_sym) + self.class.openapi_types.each_pair do |key, type| + if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key) + self.send("#{key}=", nil) # // guardrails-disable-line + elsif type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) # // guardrails-disable-line + end + elsif !attributes[self.class.attribute_map[key]].nil? && type.kind_of?(Array) + for base_type in type do + res = _deserialize(base_type, attributes[self.class.attribute_map[key]]) + if !res.nil? + self.send("#{key}=", res) # // guardrails-disable-line + break + end + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) # // guardrails-disable-line + end + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :Time + Time.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :Boolean + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + # models (e.g. Pet) or oneOf + klass = Lob.const_get(type) + klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) # // guardrails-disable-line + if value.nil? + is_nullable = self.class.openapi_nullable.include?(attr) + next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) + end + + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + + end + +end diff --git a/lib/lob/models/snap_pack_editable.rb b/lib/lob/models/snap_pack_editable.rb new file mode 100644 index 0000000..41d92a1 --- /dev/null +++ b/lib/lob/models/snap_pack_editable.rb @@ -0,0 +1,384 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'date' +require 'time' + +module Lob + class SnapPackEditable + # Must either be an address ID or an inline object with correct address parameters. + attr_accessor :to + + # Must either be an address ID or an inline object with correct address parameters. + attr_accessor :from + + attr_accessor :size + + # An internal description that identifies this resource. Must be no longer than 255 characters. + attr_accessor :description + + # Use metadata to store custom information for tagging and labeling back to your internal systems. Must be an object with up to 20 key-value pairs. Keys must be at most 40 characters and values must be at most 500 characters. Neither can contain the characters `\"` and `\\`. i.e. '{\"customer_id\" : \"NEWYORK2015\"}' Nested objects are not supported. See [Metadata](#section/Metadata) for more information. + attr_accessor :metadata + + attr_accessor :mail_type + + # You can input a merge variable payload object to your template to render dynamic content. For example, if you have a template like: `{{variable_name}}`, pass in `{\"variable_name\": \"Harry\"}` to render `Harry`. `merge_variables` must be an object. Any type of value is accepted as long as the object is valid JSON; you can use `strings`, `numbers`, `booleans`, `arrays`, `objects`, or `null`. The max length of the object is 25,000 characters. If you call `JSON.stringify` on your object, it can be no longer than 25,000 characters. Your variable names cannot contain any whitespace or any of the following special characters: `!`, `\"`, `#`, `%`, `&`, `'`, `(`, `)`, `*`, `+`, `,`, `/`, `;`, `<`, `=`, `>`, `@`, `[`, `\\`, `]`, `^`, `` ` ``, `{`, `|`, `}`, `~`. More instructions can be found in [our guide to using html and merge variables](https://lob.com/resources/guides/general/using-html-and-merge-variables). Depending on your [Merge Variable strictness](https://dashboard.lob.com/#/settings/account) setting, if you define variables in your HTML but do not pass them here, you will either receive an error or the variable will render as an empty string. + attr_accessor :merge_variables + + # A timestamp in ISO 8601 format which specifies a date after the current time and up to 180 days in the future to send the letter off for production. Setting a send date overrides the default [cancellation window](#section/Cancellation-Windows) applied to the mailpiece. Until the `send_date` has passed, the mailpiece can be canceled. If a date in the format `2017-11-01` is passed, it will evaluate to midnight UTC of that date (`2017-11-01T00:00:00.000Z`). If a datetime is passed, that exact time will be used. A `send_date` passed with no time zone will default to UTC, while a `send_date` passed with a time zone will be converted to UTC. + attr_accessor :send_date + + # The artwork to use as the inside of your snap pack. + attr_accessor :inside + + # The artwork to use as the outside of your snap pack. + attr_accessor :outside + + # An optional string with the billing group ID to tag your usage with. Is used for billing purposes. Requires special activation to use. See [Billing Group API](https://lob.github.io/lob-openapi/#tag/Billing-Groups) for more information. + attr_accessor :billing_group_id + + attr_accessor :use_type + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'to' => :'to', + :'from' => :'from', + :'size' => :'size', + :'description' => :'description', + :'metadata' => :'metadata', + :'mail_type' => :'mail_type', + :'merge_variables' => :'merge_variables', + :'send_date' => :'send_date', + :'inside' => :'inside', + :'outside' => :'outside', + :'billing_group_id' => :'billing_group_id', + :'use_type' => :'use_type' + } + end + + # Returns all the JSON keys this model knows about + def self.acceptable_attributes + attribute_map.values + end + + # Attribute type mapping. + def self.openapi_types + { + :'to' => Array[:'AddressEditable', :'String'], + :'from' => Array[:'AddressEditable', :'String'], + :'size' => :'SnapPackSize', + :'description' => :'String', + :'metadata' => :'Hash', + :'mail_type' => :'MailType', + :'merge_variables' => :'Object', + :'send_date' => :'Time', + :'inside' => :'String', + :'outside' => :'String', + :'billing_group_id' => :'String', + :'use_type' => :'SnpUseType' + } + end + + # List of attributes with nullable: true + def self.openapi_nullable + Set.new([ + :'to', + :'from', + :'description', + :'merge_variables', + :'use_type' + ]) + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + if (!attributes.is_a?(Hash)) + fail ArgumentError, "The input argument (attributes) must be a hash in `Lob::SnapPackEditable` initialize method" + end + + # check to see if the attribute exists and convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| + if (!self.class.attribute_map.key?(k.to_sym)) + fail ArgumentError, "`#{k}` is not a valid attribute in `Lob::SnapPackEditable`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect + end + h[k.to_sym] = v + } + + if attributes.key?(:'to') + self.to = attributes[:'to'] + end + + if attributes.key?(:'from') + self.from = attributes[:'from'] + end + + if attributes.key?(:'size') + self.size = attributes[:'size'] + else + self.size = '6x18_bifold' + end + + if attributes.key?(:'description') + self.description = attributes[:'description'] + end + + if attributes.key?(:'metadata') + if (value = attributes[:'metadata']).is_a?(Hash) + self.metadata = value + end + end + + if attributes.key?(:'mail_type') + self.mail_type = attributes[:'mail_type'] + else + self.mail_type = 'usps_first_class' + end + + if attributes.key?(:'merge_variables') + self.merge_variables = attributes[:'merge_variables'] + end + + if attributes.key?(:'send_date') + self.send_date = attributes[:'send_date'] + end + + if attributes.key?(:'inside') + self.inside = attributes[:'inside'] + end + + if attributes.key?(:'outside') + self.outside = attributes[:'outside'] + end + + if attributes.key?(:'billing_group_id') + self.billing_group_id = attributes[:'billing_group_id'] + end + + if attributes.key?(:'use_type') + self.use_type = attributes[:'use_type'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + if !@description.nil? && @description.to_s.length > 255 + invalid_properties.push('invalid value for "description", the character length must be smaller than or equal to 255.') + end + + if @inside.nil? + invalid_properties.push('invalid value for "inside", inside cannot be nil.') + end + + if @outside.nil? + invalid_properties.push('invalid value for "outside", outside cannot be nil.') + end + + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + return false if !@description.nil? && @description.to_s.length > 255 + return false if @inside.nil? + return false if @outside.nil? + true + end + + # Custom attribute writer method with validation + # @param [Object] description Value to be assigned + def description=(description) + if !description.nil? && description.to_s.length > 255 + fail ArgumentError, 'invalid value for "description", the character length must be smaller than or equal to 255.' + end + + @description = description + end + + # Custom attribute writer method with validation + # @param [Object] metadata Value to be assigned + def metadata=(metadata) + @metadata = metadata + end + + # Custom attribute writer method with validation + # @param [Object] merge_variables Value to be assigned + def merge_variables=(merge_variables) + @merge_variables = merge_variables + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + to == o.to && + from == o.from && + size == o.size && + description == o.description && + metadata == o.metadata && + mail_type == o.mail_type && + merge_variables == o.merge_variables && + send_date == o.send_date && + inside == o.inside && + outside == o.outside && + billing_group_id == o.billing_group_id && + use_type == o.use_type + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Integer] Hash code + def hash + [to, from, size, description, metadata, mail_type, merge_variables, send_date, inside, outside, billing_group_id, use_type].hash + end + + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def self.build_from_hash(attributes) + new.build_from_hash(attributes) + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + attributes = attributes.transform_keys(&:to_sym) + self.class.openapi_types.each_pair do |key, type| + if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key) + self.send("#{key}=", nil) # // guardrails-disable-line + elsif type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) # // guardrails-disable-line + end + elsif !attributes[self.class.attribute_map[key]].nil? && type.kind_of?(Array) + for base_type in type do + res = _deserialize(base_type, attributes[self.class.attribute_map[key]]) + if !res.nil? + self.send("#{key}=", res) # // guardrails-disable-line + break + end + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) # // guardrails-disable-line + end + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :Time + Time.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :Boolean + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + # models (e.g. Pet) or oneOf + klass = Lob.const_get(type) + klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) # // guardrails-disable-line + if value.nil? + is_nullable = self.class.openapi_nullable.include?(attr) + next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) + end + + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + + end + +end diff --git a/lib/lob/models/snap_pack_list.rb b/lib/lob/models/snap_pack_list.rb new file mode 100644 index 0000000..3fad4d0 --- /dev/null +++ b/lib/lob/models/snap_pack_list.rb @@ -0,0 +1,324 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'date' +require 'time' + +module Lob + class SnapPackList + # list of snap packs + attr_accessor :data + + # Value is type of resource. + attr_accessor :object + + # url of next page of items in list. + attr_accessor :next_url + + # url of previous page of items in list. + attr_accessor :previous_url + + # number of resources in a set + attr_accessor :count + + # indicates the total number of records. Provided when the request specifies an \"include\" query parameter + attr_accessor :total_count + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'data' => :'data', + :'object' => :'object', + :'next_url' => :'next_url', + :'previous_url' => :'previous_url', + :'count' => :'count', + :'total_count' => :'total_count' + } + end + + # Returns all the JSON keys this model knows about + def self.acceptable_attributes + attribute_map.values + end + + # Attribute type mapping. + def self.openapi_types + { + :'data' => :'Array', + :'object' => :'String', + :'next_url' => :'String', + :'previous_url' => :'String', + :'count' => :'Integer', + :'total_count' => :'Integer' + } + end + + # List of attributes with nullable: true + def self.openapi_nullable + Set.new([ + :'next_url', + :'previous_url', + ]) + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + if (!attributes.is_a?(Hash)) + fail ArgumentError, "The input argument (attributes) must be a hash in `Lob::SnapPackList` initialize method" + end + + # check to see if the attribute exists and convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| + if (!self.class.attribute_map.key?(k.to_sym)) + fail ArgumentError, "`#{k}` is not a valid attribute in `Lob::SnapPackList`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect + end + h[k.to_sym] = v + } + + if attributes.key?(:'data') + if (value = attributes[:'data']).is_a?(Array) + self.data = value + end + end + + if attributes.key?(:'object') + self.object = attributes[:'object'] + end + + if attributes.key?(:'next_url') + self.next_url = attributes[:'next_url'] + end + + if attributes.key?(:'previous_url') + self.previous_url = attributes[:'previous_url'] + end + + if attributes.key?(:'count') + self.count = attributes[:'count'] + end + + if attributes.key?(:'total_count') + self.total_count = attributes[:'total_count'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + data == o.data && + object == o.object && + next_url == o.next_url && + previous_url == o.previous_url && + count == o.count && + total_count == o.total_count + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Integer] Hash code + def hash + [data, object, next_url, previous_url, count, total_count].hash + end + + def getNextPageToken + if (self.next_url.empty?) + return null + end + + queryPartitionArray = self.next_url.split('?') + if (queryPartitionArray.length() < 2) + return null + end + + paramPartitionArray = queryPartitionArray[1].split("&") + + + beforeParamString = paramPartitionArray.select{ |x| x.include? "after=" }[0] + if (beforeParamString.empty?) + return null + end + + return beforeParamString.split("after=")[1] + end + + def getPrevPageToken + if (self.previous_url.empty?) + return null + end + + queryPartitionArray = self.previous_url.split('?') + if (queryPartitionArray.length() < 2) + return null + end + + paramPartitionArray = queryPartitionArray[1].split("&") + + + beforeParamString = paramPartitionArray.select{ |x| x.include? "before=" }[0] + if (beforeParamString.empty?) + return null + end + + return beforeParamString.split("before=")[1] + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def self.build_from_hash(attributes) + new.build_from_hash(attributes) + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + attributes = attributes.transform_keys(&:to_sym) + self.class.openapi_types.each_pair do |key, type| + if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key) + self.send("#{key}=", nil) # // guardrails-disable-line + elsif type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) # // guardrails-disable-line + end + elsif !attributes[self.class.attribute_map[key]].nil? && type.kind_of?(Array) + for base_type in type do + res = _deserialize(base_type, attributes[self.class.attribute_map[key]]) + if !res.nil? + self.send("#{key}=", res) # // guardrails-disable-line + break + end + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) # // guardrails-disable-line + end + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :Time + Time.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :Boolean + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + # models (e.g. Pet) or oneOf + klass = Lob.const_get(type) + klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) # // guardrails-disable-line + if value.nil? + is_nullable = self.class.openapi_nullable.include?(attr) + next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) + end + + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + + end + +end diff --git a/lib/lob/models/snap_pack_size.rb b/lib/lob/models/snap_pack_size.rb new file mode 100644 index 0000000..f7e7c7d --- /dev/null +++ b/lib/lob/models/snap_pack_size.rb @@ -0,0 +1,38 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'date' +require 'time' + +module Lob + class SnapPackSize + N6X18_BIFOLD = "6x18_bifold".freeze + N11X9_BIFOLD = "11x9_bifold".freeze + N12X9_BIFOLD = "12x9_bifold".freeze + + # Builds the enum from string + # @param [String] The enum value in the form of the string + # @return [String] The enum value + def self.build_from_hash(value) + new.build_from_hash(value) + end + + # Builds the enum from string + # @param [String] The enum value in the form of the string + # @return [String] The enum value + def build_from_hash(value) + constantValues = SnapPackSize.constants.select { |c| SnapPackSize::const_get(c) == value } + raise "Invalid ENUM value #{value} for class #SnapPackSize" if constantValues.empty? + value + end + end +end diff --git a/lib/lob/models/snp_use_type.rb b/lib/lob/models/snp_use_type.rb new file mode 100644 index 0000000..c1efcd0 --- /dev/null +++ b/lib/lob/models/snp_use_type.rb @@ -0,0 +1,38 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'date' +require 'time' + +module Lob + class SnpUseType + MARKETING = "marketing".freeze + OPERATIONAL = "operational".freeze + NULL = "null".freeze + + # Builds the enum from string + # @param [String] The enum value in the form of the string + # @return [String] The enum value + def self.build_from_hash(value) + new.build_from_hash(value) + end + + # Builds the enum from string + # @param [String] The enum value in the form of the string + # @return [String] The enum value + def build_from_hash(value) + constantValues = SnpUseType.constants.select { |c| SnpUseType::const_get(c) == value } + raise "Invalid ENUM value #{value} for class #SnpUseType" if constantValues.empty? + value + end + end +end diff --git a/lib/lob/models/sort_by.rb b/lib/lob/models/sort_by.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/sort_by1.rb b/lib/lob/models/sort_by1.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/sort_by2.rb b/lib/lob/models/sort_by2.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/sort_by3.rb b/lib/lob/models/sort_by3.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/sort_by4.rb b/lib/lob/models/sort_by4.rb new file mode 100644 index 0000000..f915249 --- /dev/null +++ b/lib/lob/models/sort_by4.rb @@ -0,0 +1,283 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'date' +require 'time' + +module Lob + class SortBy4 + attr_accessor :date_created + + attr_accessor :send_date + + class EnumAttributeValidator + attr_reader :datatype + attr_reader :allowable_values + + def initialize(datatype, allowable_values) + @allowable_values = allowable_values.map do |value| + case datatype.to_s + when /Integer/i + value.to_i + when /Float/i + value.to_f + else + value + end + end + end + + def valid?(value) + !value || allowable_values.include?(value) + end + end + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'date_created' => :'date_created', + :'send_date' => :'send_date' + } + end + + # Returns all the JSON keys this model knows about + def self.acceptable_attributes + attribute_map.values + end + + # Attribute type mapping. + def self.openapi_types + { + :'date_created' => :'String', + :'send_date' => :'String' + } + end + + # List of attributes with nullable: true + def self.openapi_nullable + Set.new([ + ]) + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + if (!attributes.is_a?(Hash)) + fail ArgumentError, "The input argument (attributes) must be a hash in `Lob::SortBy4` initialize method" + end + + # check to see if the attribute exists and convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| + if (!self.class.attribute_map.key?(k.to_sym)) + fail ArgumentError, "`#{k}` is not a valid attribute in `Lob::SortBy4`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect + end + h[k.to_sym] = v + } + + if attributes.key?(:'date_created') + self.date_created = attributes[:'date_created'] + end + + if attributes.key?(:'send_date') + self.send_date = attributes[:'send_date'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + date_created_validator = EnumAttributeValidator.new('String', ["asc", "desc"]) + return false unless date_created_validator.valid?(@date_created) + send_date_validator = EnumAttributeValidator.new('String', ["asc", "desc"]) + return false unless send_date_validator.valid?(@send_date) + true + end + + # Custom attribute writer method checking allowed values (enum). + # @param [Object] date_created Object to be assigned + def date_created=(date_created) + validator = EnumAttributeValidator.new('String', ["asc", "desc"]) + unless validator.valid?(date_created) + fail ArgumentError, "invalid value for \"date_created\", must be one of #{validator.allowable_values}." + end + @date_created = date_created + end + + # Custom attribute writer method checking allowed values (enum). + # @param [Object] send_date Object to be assigned + def send_date=(send_date) + validator = EnumAttributeValidator.new('String', ["asc", "desc"]) + unless validator.valid?(send_date) + fail ArgumentError, "invalid value for \"send_date\", must be one of #{validator.allowable_values}." + end + @send_date = send_date + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + date_created == o.date_created && + send_date == o.send_date + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Integer] Hash code + def hash + [date_created, send_date].hash + end + + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def self.build_from_hash(attributes) + new.build_from_hash(attributes) + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + attributes = attributes.transform_keys(&:to_sym) + self.class.openapi_types.each_pair do |key, type| + if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key) + self.send("#{key}=", nil) # // guardrails-disable-line + elsif type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) # // guardrails-disable-line + end + elsif !attributes[self.class.attribute_map[key]].nil? && type.kind_of?(Array) + for base_type in type do + res = _deserialize(base_type, attributes[self.class.attribute_map[key]]) + if !res.nil? + self.send("#{key}=", res) # // guardrails-disable-line + break + end + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) # // guardrails-disable-line + end + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :Time + Time.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :Boolean + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + # models (e.g. Pet) or oneOf + klass = Lob.const_get(type) + klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) # // guardrails-disable-line + if value.nil? + is_nullable = self.class.openapi_nullable.include?(attr) + next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) + end + + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + + end + +end diff --git a/lib/lob/models/sort_by_date_modified.rb b/lib/lob/models/sort_by_date_modified.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/suggestions.rb b/lib/lob/models/suggestions.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template.rb b/lib/lob/models/template.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template_deletion.rb b/lib/lob/models/template_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template_list.rb b/lib/lob/models/template_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template_update.rb b/lib/lob/models/template_update.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template_version.rb b/lib/lob/models/template_version.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template_version_deletion.rb b/lib/lob/models/template_version_deletion.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template_version_list.rb b/lib/lob/models/template_version_list.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template_version_updatable.rb b/lib/lob/models/template_version_updatable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template_version_writable.rb b/lib/lob/models/template_version_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/template_writable.rb b/lib/lob/models/template_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/thumbnail.rb b/lib/lob/models/thumbnail.rb old mode 100755 new mode 100644 index b4bb53c..d701cbc --- a/lib/lob/models/thumbnail.rb +++ b/lib/lob/models/thumbnail.rb @@ -85,17 +85,17 @@ def initialize(attributes = {}) # @return Array for valid properties with the reasons def list_invalid_properties invalid_properties = Array.new - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !@small.nil? && @small !~ pattern invalid_properties.push("invalid value for \"small\", must conform to the pattern #{pattern}.") end - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !@medium.nil? && @medium !~ pattern invalid_properties.push("invalid value for \"medium\", must conform to the pattern #{pattern}.") end - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !@large.nil? && @large !~ pattern invalid_properties.push("invalid value for \"large\", must conform to the pattern #{pattern}.") end @@ -106,16 +106,16 @@ def list_invalid_properties # Check to see if the all the properties in the model are valid # @return true if the model is valid def valid? - return false if !@small.nil? && @small !~ Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) - return false if !@medium.nil? && @medium !~ Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) - return false if !@large.nil? && @large !~ Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + return false if !@small.nil? && @small !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) + return false if !@medium.nil? && @medium !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) + return false if !@large.nil? && @large !~ Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) true end # Custom attribute writer method with validation # @param [Object] small Value to be assigned def small=(small) - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !small.nil? && small !~ pattern fail ArgumentError, "invalid value for \"small\", must conform to the pattern #{pattern}." end @@ -126,7 +126,7 @@ def small=(small) # Custom attribute writer method with validation # @param [Object] medium Value to be assigned def medium=(medium) - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !medium.nil? && medium !~ pattern fail ArgumentError, "invalid value for \"medium\", must conform to the pattern #{pattern}." end @@ -137,7 +137,7 @@ def medium=(medium) # Custom attribute writer method with validation # @param [Object] large Value to be assigned def large=(large) - pattern = Regexp.new(/^https:\/\/(lob-assets|lob-assets-staging)\.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(\.pdf|_thumb_[a-z]+_[0-9]+\.png)\?(version=[a-z0-9-]*&)?expires=[0-9]{10}&signature=[a-zA-Z0-9_-]+$/) + pattern = Regexp.new(/^https:\/\/lob-assets.com\/(letters|postcards|bank-accounts|checks|self-mailers|cards)\/[a-z]{3,4}_[a-z0-9]{15,16}(_signature)?(\.pdf|_thumb_[a-z]+_[0-9]+\.png|\.png)\?(version=[a-z0-9]*&)expires=[0-9]{10}&signature=[a-zA-Z0-9-_]+/) if !large.nil? && large !~ pattern fail ArgumentError, "invalid value for \"large\", must conform to the pattern #{pattern}." end diff --git a/lib/lob/models/tracking_event_certified.rb b/lib/lob/models/tracking_event_certified.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/tracking_event_details.rb b/lib/lob/models/tracking_event_details.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/tracking_event_normal.rb b/lib/lob/models/tracking_event_normal.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/upload.rb b/lib/lob/models/upload.rb old mode 100755 new mode 100644 index 8e4b58d..9716ebb --- a/lib/lob/models/upload.rb +++ b/lib/lob/models/upload.rb @@ -24,6 +24,9 @@ class Upload # The environment in which the mailpieces were created. Today, will only be `live`. attr_accessor :mode + # Campaign ID associated with the upload + attr_accessor :campaign_id + # Url where your campaign mailpiece failures can be retrieved attr_accessor :failures_url @@ -87,6 +90,7 @@ def self.attribute_map :'id' => :'id', :'account_id' => :'accountId', :'mode' => :'mode', + :'campaign_id' => :'campaignId', :'failures_url' => :'failuresUrl', :'original_filename' => :'originalFilename', :'state' => :'state', @@ -114,6 +118,7 @@ def self.openapi_types :'id' => :'String', :'account_id' => :'String', :'mode' => :'String', + :'campaign_id' => :'String', :'failures_url' => :'String', :'original_filename' => :'String', :'state' => :'UploadState', @@ -164,6 +169,10 @@ def initialize(attributes = {}) self.mode = attributes[:'mode'] end + if attributes.key?(:'campaign_id') + self.campaign_id = attributes[:'campaign_id'] + end + if attributes.key?(:'failures_url') self.failures_url = attributes[:'failures_url'] end @@ -240,6 +249,10 @@ def list_invalid_properties invalid_properties.push('invalid value for "mode", mode cannot be nil.') end + if @campaign_id.nil? + invalid_properties.push('invalid value for "campaign_id", campaign_id cannot be nil.') + end + if @state.nil? invalid_properties.push('invalid value for "state", state cannot be nil.') end @@ -292,6 +305,7 @@ def valid? return false if @mode.nil? mode_validator = EnumAttributeValidator.new('String', ["test", "live"]) return false unless mode_validator.valid?(@mode) + return false if @campaign_id.nil? return false if @state.nil? return false if @total_mailpieces.nil? return false if @failed_mailpieces.nil? @@ -338,6 +352,7 @@ def ==(o) id == o.id && account_id == o.account_id && mode == o.mode && + campaign_id == o.campaign_id && failures_url == o.failures_url && original_filename == o.original_filename && state == o.state && @@ -362,7 +377,7 @@ def eql?(o) # Calculates hash code according to all attributes. # @return [Integer] Hash code def hash - [id, account_id, mode, failures_url, original_filename, state, total_mailpieces, failed_mailpieces, validated_mailpieces, bytes_processed, date_created, date_modified, required_address_column_mapping, optional_address_column_mapping, metadata, merge_variable_column_mapping].hash + [id, account_id, mode, campaign_id, failures_url, original_filename, state, total_mailpieces, failed_mailpieces, validated_mailpieces, bytes_processed, date_created, date_modified, required_address_column_mapping, optional_address_column_mapping, metadata, merge_variable_column_mapping].hash end diff --git a/lib/lob/models/upload_create_export.rb b/lib/lob/models/upload_create_export.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/upload_file.rb b/lib/lob/models/upload_file.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/upload_state.rb b/lib/lob/models/upload_state.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/upload_updatable.rb b/lib/lob/models/upload_updatable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/upload_writable.rb b/lib/lob/models/upload_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/uploads_metadata.rb b/lib/lob/models/uploads_metadata.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/us_autocompletions.rb b/lib/lob/models/us_autocompletions.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/us_autocompletions_writable.rb b/lib/lob/models/us_autocompletions_writable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/us_components.rb b/lib/lob/models/us_components.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/us_verification.rb b/lib/lob/models/us_verification.rb old mode 100755 new mode 100644 index 7230bab..297eecc --- a/lib/lob/models/us_verification.rb +++ b/lib/lob/models/us_verification.rb @@ -1,7 +1,7 @@ =begin #Lob -#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? The version of the OpenAPI document: 1.3.0 Contact: lob-openapi@lob.com @@ -21,22 +21,22 @@ class UsVerification # The intended recipient, typically a person's or firm's name. attr_accessor :recipient - # The primary delivery line (usually the street address) of the address. Combination of the following applicable `components`: * `primary_number` * `street_predirection` * `street_name` * `street_suffix` * `street_postdirection` * `secondary_designator` * `secondary_number` * `pmb_designator` * `pmb_number` + # The primary delivery line (usually the street address) of the address. Combination of the following applicable `components`: * `primary_number` * `street_predirection` * `street_name` * `street_suffix` * `street_postdirection` * `secondary_designator` * `secondary_number` * `pmb_designator` * `pmb_number` attr_accessor :primary_line - # The secondary delivery line of the address. This field is typically empty but may contain information if `primary_line` is too long. + # The secondary delivery line of the address. This field is typically empty but may contain information if `primary_line` is too long. attr_accessor :secondary_line - # Only present for addresses in Puerto Rico. An urbanization refers to an area, sector, or development within a city. See [USPS documentation](https://pe.usps.com/text/pub28/28api_008.htm#:~:text=I51.,-4%20Urbanizations&text=In%20Puerto%20Rico%2C%20identical%20street,placed%20before%20the%20urbanization%20name.) for clarification. + # Only present for addresses in Puerto Rico. An urbanization refers to an area, sector, or development within a city. See [USPS documentation](https://pe.usps.com/text/pub28/28api_008.htm#:~:text=I51.,-4%20Urbanizations&text=In%20Puerto%20Rico%2C%20identical%20street,placed%20before%20the%20urbanization%20name.) for clarification. attr_accessor :urbanization - # Combination of the following applicable `components`: * City (`city`) * State (`state`) * ZIP code (`zip_code`) * ZIP+4 (`zip_code_plus_4`) + # Combination of the following applicable `components`: * City (`city`) * State (`state`) * ZIP code (`zip_code`) * ZIP+4 (`zip_code_plus_4`) attr_accessor :last_line - # Summarizes the deliverability of the `us_verification` object. For full details, see the `deliverability_analysis` field. Possible values are: * `deliverable` – The address is deliverable by the USPS. * `deliverable_unnecessary_unit` – The address is deliverable, but the secondary unit information is unnecessary. * `deliverable_incorrect_unit` – The address is deliverable to the building's default address but the secondary unit provided may not exist. There is a chance the mail will not reach the intended recipient. * `deliverable_missing_unit` – The address is deliverable to the building's default address but is missing secondary unit information. There is a chance the mail will not reach the intended recipient. * `undeliverable` – The address is not deliverable according to the USPS. + # Summarizes the deliverability of the `us_verification` object. For full details, see the `deliverability_analysis` field. Possible values are: * `deliverable` – The address is deliverable by the USPS. * `deliverable_unnecessary_unit` – The address is deliverable, but the secondary unit information is unnecessary. * `deliverable_incorrect_unit` – The address is deliverable to the building's default address but the secondary unit provided may not exist. There is a chance the mail will not reach the intended recipient. * `deliverable_missing_unit` – The address is deliverable to the building's default address but is missing secondary unit information. There is a chance the mail will not reach the intended recipient. * `undeliverable` – The address is not deliverable according to the USPS. attr_accessor :deliverability - # This field indicates whether an address was found in a more comprehensive address dataset that includes sources from the USPS, open source mapping data, and our proprietary mail delivery data. This field can be interpreted as a representation of whether an address is a real location or not. Additionally a valid address may contradict the deliverability field since an address can be a real valid location but the USPS may not deliver to that address. + # This field indicates whether an address was found in a more comprehensive address dataset that includes sources from the USPS, open source mapping data, and our proprietary mail delivery data. This field can be interpreted as a representation of whether an address is a real location or not. Additionally a valid address may contradict the deliverability field since an address can be a real valid location but the USPS may not deliver to that address. attr_accessor :valid_address attr_accessor :components @@ -47,7 +47,7 @@ class UsVerification attr_accessor :object - # ID that is returned in the response body for the verification + # ID that is returned in the response body for the verification attr_accessor :transient_id class EnumAttributeValidator diff --git a/lib/lob/models/us_verification_or_error.rb b/lib/lob/models/us_verification_or_error.rb old mode 100755 new mode 100644 index f4a99ea..a94c50a --- a/lib/lob/models/us_verification_or_error.rb +++ b/lib/lob/models/us_verification_or_error.rb @@ -1,7 +1,7 @@ =begin #Lob -#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? The version of the OpenAPI document: 1.3.0 Contact: lob-openapi@lob.com @@ -14,7 +14,7 @@ require 'time' module Lob - # A model used to represent an entry in a result list where the entry can either be a us_verification or an Error. The SDK will perform necessary casting into the correct corresponding type. + # A model used to represent an entry in a result list where the entry can either be a us_verification or an Error. The SDK will perform necessary casting into the correct corresponding type. class UsVerificationOrError # Unique identifier prefixed with `us_ver_`. attr_accessor :id @@ -22,13 +22,13 @@ class UsVerificationOrError # The intended recipient, typically a person's or firm's name. attr_accessor :recipient - # The primary delivery line (usually the street address) of the address. Combination of the following applicable `components`: * `primary_number` * `street_predirection` * `street_name` * `street_suffix` * `street_postdirection` * `secondary_designator` * `secondary_number` * `pmb_designator` * `pmb_number` + # The primary delivery line (usually the street address) of the address. Combination of the following applicable `components`: * `primary_number` * `street_predirection` * `street_name` * `street_suffix` * `street_postdirection` * `secondary_designator` * `secondary_number` * `pmb_designator` * `pmb_number` attr_accessor :primary_line - # The secondary delivery line of the address. This field is typically empty but may contain information if `primary_line` is too long. + # The secondary delivery line of the address. This field is typically empty but may contain information if `primary_line` is too long. attr_accessor :secondary_line - # Only present for addresses in Puerto Rico. An urbanization refers to an area, sector, or development within a city. See [USPS documentation](https://pe.usps.com/text/pub28/28api_008.htm#:~:text=I51.,-4%20Urbanizations&text=In%20Puerto%20Rico%2C%20identical%20street,placed%20before%20the%20urbanization%20name.) for clarification. + # Only present for addresses in Puerto Rico. An urbanization refers to an area, sector, or development within a city. See [USPS documentation](https://pe.usps.com/text/pub28/28api_008.htm#:~:text=I51.,-4%20Urbanizations&text=In%20Puerto%20Rico%2C%20identical%20street,placed%20before%20the%20urbanization%20name.) for clarification. attr_accessor :urbanization attr_accessor :last_line @@ -43,7 +43,7 @@ class UsVerificationOrError attr_accessor :object - # ID that is returned in the response body for the verification + # ID that is returned in the response body for the verification attr_accessor :transient_id attr_accessor :error diff --git a/lib/lob/models/us_verifications.rb b/lib/lob/models/us_verifications.rb old mode 100755 new mode 100644 index 7d3330a..41b8b17 --- a/lib/lob/models/us_verifications.rb +++ b/lib/lob/models/us_verifications.rb @@ -1,7 +1,7 @@ =begin #Lob -#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? The version of the OpenAPI document: 1.3.0 Contact: lob-openapi@lob.com diff --git a/lib/lob/models/us_verifications_writable.rb b/lib/lob/models/us_verifications_writable.rb old mode 100755 new mode 100644 index b171d97..dc022f2 --- a/lib/lob/models/us_verifications_writable.rb +++ b/lib/lob/models/us_verifications_writable.rb @@ -1,7 +1,7 @@ =begin #Lob -#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? The version of the OpenAPI document: 1.3.0 Contact: lob-openapi@lob.com @@ -15,19 +15,19 @@ module Lob class UsVerificationsWritable - # The entire address in one string (e.g., \"2261 Market Street 94114\"). _Does not support a recipient and will error when other payload parameters are provided._ + # The entire address in one string (e.g., \"2261 Market Street 94114\"). _Does not support a recipient and will error when other payload parameters are provided._ attr_accessor :address # The intended recipient, typically a person's or firm's name. attr_accessor :recipient - # The primary delivery line (usually the street address) of the address. Combination of the following applicable `components`: * `primary_number` * `street_predirection` * `street_name` * `street_suffix` * `street_postdirection` * `secondary_designator` * `secondary_number` * `pmb_designator` * `pmb_number` + # The primary delivery line (usually the street address) of the address. Combination of the following applicable `components`: * `primary_number` * `street_predirection` * `street_name` * `street_suffix` * `street_postdirection` * `secondary_designator` * `secondary_number` * `pmb_designator` * `pmb_number` attr_accessor :primary_line - # The secondary delivery line of the address. This field is typically empty but may contain information if `primary_line` is too long. + # The secondary delivery line of the address. This field is typically empty but may contain information if `primary_line` is too long. attr_accessor :secondary_line - # Only present for addresses in Puerto Rico. An urbanization refers to an area, sector, or development within a city. See [USPS documentation](https://pe.usps.com/text/pub28/28api_008.htm#:~:text=I51.,-4%20Urbanizations&text=In%20Puerto%20Rico%2C%20identical%20street,placed%20before%20the%20urbanization%20name.) for clarification. + # Only present for addresses in Puerto Rico. An urbanization refers to an area, sector, or development within a city. See [USPS documentation](https://pe.usps.com/text/pub28/28api_008.htm#:~:text=I51.,-4%20Urbanizations&text=In%20Puerto%20Rico%2C%20identical%20street,placed%20before%20the%20urbanization%20name.) for clarification. attr_accessor :urbanization attr_accessor :city @@ -38,7 +38,7 @@ class UsVerificationsWritable # Required if `city` and `state` are not passed in. If included, must be formatted as a US ZIP or ZIP+4 (e.g. `94107`, `941072282`, `94107-2282`). attr_accessor :zip_code - # ID that is returned in the response body for the verification + # ID that is returned in the response body for the verification attr_accessor :transient_id # Attribute mapping from ruby-style variable name to JSON key. diff --git a/lib/lob/models/validation_error.rb b/lib/lob/models/validation_error.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/zip.rb b/lib/lob/models/zip.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/zip_code_type.rb b/lib/lob/models/zip_code_type.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/zip_editable.rb b/lib/lob/models/zip_editable.rb old mode 100755 new mode 100644 diff --git a/lib/lob/models/zip_lookup_city.rb b/lib/lob/models/zip_lookup_city.rb old mode 100755 new mode 100644 diff --git a/lib/lob/version.rb b/lib/lob/version.rb new file mode 100644 index 0000000..80478ea --- /dev/null +++ b/lib/lob/version.rb @@ -0,0 +1,15 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +module Lob + VERSION = '1.0.0' +end diff --git a/lib/openapi_client.rb b/lib/openapi_client.rb old mode 100755 new mode 100644 diff --git a/lib/openapi_client/api_client.rb b/lib/openapi_client/api_client.rb old mode 100755 new mode 100644 diff --git a/lib/openapi_client/api_error.rb b/lib/openapi_client/api_error.rb old mode 100755 new mode 100644 diff --git a/lib/openapi_client/configuration.rb b/lib/openapi_client/configuration.rb old mode 100755 new mode 100644 diff --git a/lib/openapi_client/version.rb b/lib/openapi_client/version.rb old mode 100755 new mode 100644 diff --git a/lob.gemspec b/lob.gemspec new file mode 100755 index 0000000..5a50498 --- /dev/null +++ b/lob.gemspec @@ -0,0 +1,38 @@ +# -*- encoding: utf-8 -*- + +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +$:.push File.expand_path("../lib", __FILE__) +require "lob/version" + +Gem::Specification.new do |s| + s.name = "lob" + s.version = Lob::VERSION + s.platform = Gem::Platform::RUBY + s.authors = ["OpenAPI-Generator"] + s.email = ["lob-openapi@lob.com"] + s.homepage = "https://openapi-generator.tech" + s.summary = "Lob Ruby Gem" + s.description = "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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? " + s.license = "Unlicense" + s.required_ruby_version = ">= 2.4" + + s.add_runtime_dependency 'typhoeus', '~> 1.0', '>= 1.0.1' + + s.add_development_dependency 'rspec', '~> 3.6', '>= 3.6.0' + + s.files = `find *`.split("\n").uniq.sort.select { |f| !f.empty? } + s.test_files = `find spec/*`.split("\n") + s.executables = [] + s.require_paths = ["lib"] +end diff --git a/spec/api/buckslip_orders_api_spec.rb b/spec/api/buckslip_orders_api_spec.rb new file mode 100644 index 0000000..1d881d2 --- /dev/null +++ b/spec/api/buckslip_orders_api_spec.rb @@ -0,0 +1,62 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'spec_helper' +require 'json' + +# Unit tests for Lob::BuckslipOrdersApi +# Automatically generated by openapi-generator (https://openapi-generator.tech) +# Please update as you see appropriate +describe 'BuckslipOrdersApi' do + before do + # run before each test + @api_instance = Lob::BuckslipOrdersApi.new + end + + after do + # run after each test + end + + describe 'test an instance of BuckslipOrdersApi' do + it 'should create an instance of BuckslipOrdersApi' do + expect(@api_instance).to be_instance_of(Lob::BuckslipOrdersApi) + end + end + + # unit tests for buckslip_order_create + # create + # Creates a new buckslip order given information + # @param buckslip_id The ID of the buckslip to which the buckslip orders belong. + # @param buckslip_order_editable + # @param [Hash] opts the optional parameters + # @return [BuckslipOrder] + describe 'buckslip_order_create test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + # unit tests for buckslip_orders_retrieve + # get + # Retrieves the buckslip orders associated with the given buckslip id. + # @param buckslip_id The ID of the buckslip to which the buckslip orders belong. + # @param [Hash] opts the optional parameters + # @option opts [Integer] :limit How many results to return. + # @option opts [Integer] :offset An integer that designates the offset at which to begin returning results. Defaults to 0. + # @return [BuckslipOrdersList] + describe 'buckslip_orders_retrieve test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/api/buckslips_api_spec.rb b/spec/api/buckslips_api_spec.rb new file mode 100644 index 0000000..69e463e --- /dev/null +++ b/spec/api/buckslips_api_spec.rb @@ -0,0 +1,100 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'spec_helper' +require 'json' + +# Unit tests for Lob::BuckslipsApi +# Automatically generated by openapi-generator (https://openapi-generator.tech) +# Please update as you see appropriate +describe 'BuckslipsApi' do + before do + # run before each test + @api_instance = Lob::BuckslipsApi.new + end + + after do + # run after each test + end + + describe 'test an instance of BuckslipsApi' do + it 'should create an instance of BuckslipsApi' do + expect(@api_instance).to be_instance_of(Lob::BuckslipsApi) + end + end + + # unit tests for buckslip_create + # create + # Creates a new buckslip given information + # @param buckslip_editable + # @param [Hash] opts the optional parameters + # @option opts [Object] :front An optional file upload as either a byte array or file type. + # @return [Buckslip] + describe 'buckslip_create test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + # unit tests for buckslip_delete + # delete + # Delete an existing buckslip. You need only supply the unique identifier that was returned upon buckslip creation. + # @param buckslip_id id of the buckslip + # @param [Hash] opts the optional parameters + # @return [BuckslipDeletion] + describe 'buckslip_delete test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + # unit tests for buckslip_retrieve + # get + # Retrieves the details of an existing buckslip. You need only supply the unique customer identifier that was returned upon buckslip creation. + # @param buckslip_id id of the buckslip + # @param [Hash] opts the optional parameters + # @return [Buckslip] + describe 'buckslip_retrieve test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + # unit tests for buckslip_update + # update + # Update the details of an existing buckslip. You need only supply the unique identifier that was returned upon buckslip creation. + # @param buckslip_id id of the buckslip + # @param buckslip_updatable + # @param [Hash] opts the optional parameters + # @return [Buckslip] + describe 'buckslip_update test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + # unit tests for buckslips_list + # List + # Returns a list of your buckslips. The buckslips are returned sorted by creation date, with the most recently created buckslips appearing first. + # @param [Hash] opts the optional parameters + # @option opts [Integer] :limit How many results to return. + # @option opts [String] :before A reference to a list entry used for paginating to the previous set of entries. This field is pre-populated in the `previous_url` field in the return response. + # @option opts [String] :after A reference to a list entry used for paginating to the next set of entries. This field is pre-populated in the `next_url` field in the return response. + # @option opts [Array] :include Request that the response include the total count by specifying `include[]=total_count`. + # @return [BuckslipsList] + describe 'buckslips_list test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/api/snap_packs_api_spec.rb b/spec/api/snap_packs_api_spec.rb new file mode 100644 index 0000000..c13f923 --- /dev/null +++ b/spec/api/snap_packs_api_spec.rb @@ -0,0 +1,94 @@ +=begin +#Lob + +#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.

Looking for our [previous documentation](https://lob.github.io/legacy-docs/)? + +The version of the OpenAPI document: 1.3.0 +Contact: lob-openapi@lob.com +Generated by: https://openapi-generator.tech +OpenAPI Generator version: 5.2.1 + +=end + +require 'spec_helper' +require 'json' + +# Unit tests for Lob::SnapPacksApi +# Automatically generated by openapi-generator (https://openapi-generator.tech) +# Please update as you see appropriate +describe 'SnapPacksApi' do + before do + # run before each test + @api_instance = Lob::SnapPacksApi.new + end + + after do + # run after each test + end + + describe 'test an instance of SnapPacksApi' do + it 'should create an instance of SnapPacksApi' do + expect(@api_instance).to be_instance_of(Lob::SnapPacksApi) + end + end + + # unit tests for snap_pack_create + # create + # Creates a new snap_pack given information + # @param snap_pack_editable + # @param [Hash] opts the optional parameters + # @option opts [String] :idempotency_key A string of no longer than 256 characters that uniquely identifies this resource. For more help integrating idempotency keys, refer to our [implementation guide](https://www.lob.com/guides#idempotent_request). + # @return [SnapPack] + describe 'snap_pack_create test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + # unit tests for snap_pack_delete + # delete + # Completely removes a snap pack from production. This can only be done if the snap pack's `send_date` has not yet passed. + # @param snp_id id of the snap_pack + # @param [Hash] opts the optional parameters + # @return [SnapPackDeletion] + describe 'snap_pack_delete test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + # unit tests for snap_pack_retrieve + # get + # Retrieves the details of an existing snap_pack. You need only supply the unique snap_pack identifier that was returned upon snap_pack creation. + # @param snp_id id of the snap_pack + # @param [Hash] opts the optional parameters + # @return [SnapPack] + describe 'snap_pack_retrieve test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + # unit tests for snap_packs_list + # list + # Returns a list of your Snap Packs. The snap packs are returned sorted by creation date, with the most recently created snap packs appearing first. + # @param [Hash] opts the optional parameters + # @option opts [Integer] :limit How many results to return. + # @option opts [String] :before A reference to a list entry used for paginating to the previous set of entries. This field is pre-populated in the `previous_url` field in the return response. + # @option opts [String] :after A reference to a list entry used for paginating to the next set of entries. This field is pre-populated in the `next_url` field in the return response. + # @option opts [Array] :include Request that the response include the total count by specifying `include[]=total_count`. + # @option opts [Hash] :date_created Filter by date created. + # @option opts [Hash] :metadata Filter by metadata key-value pair`. + # @option opts [Array] :size The Snap Pack sizes to be returned. + # @option opts [Boolean] :scheduled * `true` - only return orders (past or future) where `send_date` is greater than `date_created` * `false` - only return orders where `send_date` is equal to `date_created` + # @option opts [Hash] :send_date Filter by date sent. + # @option opts [MailType] :mail_type A string designating the mail postage type: * `usps_first_class` - (default) * `usps_standard` - a [cheaper option](https://lob.com/pricing/print-mail#compare) which is less predictable and takes longer to deliver. `usps_standard` cannot be used with `4x6` postcards or for any postcards sent outside of the United States. + # @option opts [SortBy4] :sort_by Sorts items by ascending or descending dates. Use either `date_created` or `send_date`, not both. + # @return [SnapPackList] + describe 'snap_packs_list test' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 0d3eff4..09a0277 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -11,7 +11,7 @@ =end # load the gem -require 'openapi_client' +require 'lob' # The following was generated by the `rspec --init` command. Conventionally, all # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.