avatax 20.5.0 → 20.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.vs/slnx.sqlite +0 -0
- data/avatax.gemspec +0 -1
- data/lib/avatax/client/accounts.rb +83 -83
- data/lib/avatax/client/addresses.rb +21 -21
- data/lib/avatax/client/advancedrules.rb +51 -41
- data/lib/avatax/client/avafileforms.rb +41 -41
- data/lib/avatax/client/batches.rb +101 -48
- data/lib/avatax/client/certexpressinvites.rb +39 -39
- data/lib/avatax/client/certificates.rb +163 -163
- data/lib/avatax/client/companies.rb +226 -121
- data/lib/avatax/client/compliance.rb +13 -13
- data/lib/avatax/client/contacts.rb +48 -48
- data/lib/avatax/client/customers.rb +145 -145
- data/lib/avatax/client/datasources.rb +48 -48
- data/lib/avatax/client/definitions.rb +422 -420
- data/lib/avatax/client/distancethresholds.rb +48 -48
- data/lib/avatax/client/ecms.rb +26 -31
- data/lib/avatax/client/ecommercetoken.rb +37 -0
- data/lib/avatax/client/errortransactions.rb +27 -15
- data/lib/avatax/client/filingcalendars.rb +28 -13
- data/lib/avatax/client/filings.rb +25 -14
- data/lib/avatax/client/firmclientlinkages.rb +69 -69
- data/lib/avatax/client/free.rb +27 -27
- data/lib/avatax/client/fundingrequests.rb +20 -20
- data/lib/avatax/client/items.rb +139 -139
- data/lib/avatax/client/jurisdictionoverrides.rb +48 -48
- data/lib/avatax/client/locations.rb +168 -57
- data/lib/avatax/client/multidocument.rb +98 -78
- data/lib/avatax/client/nexus.rb +104 -104
- data/lib/avatax/client/notices.rb +47 -139
- data/lib/avatax/client/notifications.rb +27 -27
- data/lib/avatax/client/provisioning.rb +20 -20
- data/lib/avatax/client/registrar.rb +76 -76
- data/lib/avatax/client/reports.rb +34 -34
- data/lib/avatax/client/settings.rb +48 -48
- data/lib/avatax/client/subscriptions.rb +27 -27
- data/lib/avatax/client/taxcodes.rb +48 -48
- data/lib/avatax/client/taxcontent.rb +27 -27
- data/lib/avatax/client/taxprofiles.rb +14 -10
- data/lib/avatax/client/taxrules.rb +48 -48
- data/lib/avatax/client/transactions.rb +185 -155
- data/lib/avatax/client/upcs.rb +48 -48
- data/lib/avatax/client/users.rb +62 -62
- data/lib/avatax/client/utilities.rb +27 -27
- data/lib/avatax/connection.rb +2 -2
- data/lib/avatax/version.rb +1 -1
- metadata +3 -16
| @@ -1,16 +1,16 @@ | |
| 1 | 
            -
            module AvaTax
         | 
| 2 | 
            -
              class Client
         | 
| 3 | 
            -
                module Compliance 
         | 
| 4 | 
            -
             | 
| 5 | 
            -
             | 
| 6 | 
            -
                  # API to modify the reference fields at the document and the line level.
         | 
| 7 | 
            -
                  #
         | 
| 8 | 
            -
                  # 
         | 
| 1 | 
            +
            module AvaTax
         | 
| 2 | 
            +
              class Client
         | 
| 3 | 
            +
                module Compliance 
         | 
| 4 | 
            +
             | 
| 5 | 
            +
             | 
| 6 | 
            +
                  # API to modify the reference fields at the document and the line level.
         | 
| 7 | 
            +
                  #
         | 
| 8 | 
            +
                  # 
         | 
| 9 9 | 
             
                  # @param companyId [Integer] 
         | 
| 10 10 | 
             
                  # @param model [TransactionReferenceFieldModel[]] 
         | 
| 11 | 
            -
                  # @return [FetchResult]
         | 
| 12 | 
            -
                  def tag_transaction(companyId, model)        path = "/api/v2/companies/#{companyId}/transactions/tag"
         | 
| 13 | 
            -
                    put(path, model)      end
         | 
| 14 | 
            -
                end
         | 
| 15 | 
            -
              end
         | 
| 11 | 
            +
                  # @return [FetchResult]
         | 
| 12 | 
            +
                  def tag_transaction(companyId, model)        path = "/api/v2/companies/#{companyId}/transactions/tag"
         | 
| 13 | 
            +
                    put(path, model)      end
         | 
| 14 | 
            +
                end
         | 
| 15 | 
            +
              end
         | 
| 16 16 | 
             
            end
         | 
| @@ -1,53 +1,53 @@ | |
| 1 | 
            -
            module AvaTax
         | 
| 2 | 
            -
              class Client
         | 
| 3 | 
            -
                module Contacts 
         | 
| 4 | 
            -
             | 
| 5 | 
            -
             | 
| 6 | 
            -
                  # Create a new contact
         | 
| 7 | 
            -
                  #
         | 
| 1 | 
            +
            module AvaTax
         | 
| 2 | 
            +
              class Client
         | 
| 3 | 
            +
                module Contacts 
         | 
| 4 | 
            +
             | 
| 5 | 
            +
             | 
| 6 | 
            +
                  # Create a new contact
         | 
| 7 | 
            +
                  #
         | 
| 8 8 | 
             
                  # Create one or more new contact objects.
         | 
| 9 9 | 
             
                  # A 'contact' is a person associated with a company who is designated to handle certain responsibilities of
         | 
| 10 10 | 
             
                  # a tax collecting and filing entity.
         | 
| 11 11 | 
             
                  #
         | 
| 12 12 | 
             
                  # ### Security Policies
         | 
| 13 13 | 
             
                  #
         | 
| 14 | 
            -
                  # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
         | 
| 14 | 
            +
                  # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
         | 
| 15 15 | 
             
                  # @param companyId [Integer] The ID of the company that owns this contact.
         | 
| 16 16 | 
             
                  # @param model [ContactModel[]] The contacts you wish to create.
         | 
| 17 | 
            -
                  # @return [ContactModel[]]
         | 
| 18 | 
            -
                  def create_contacts(companyId, model)        path = "/api/v2/companies/#{companyId}/contacts"
         | 
| 19 | 
            -
                    post(path, model)      end
         | 
| 20 | 
            -
             | 
| 21 | 
            -
                  # Delete a single contact
         | 
| 22 | 
            -
                  #
         | 
| 17 | 
            +
                  # @return [ContactModel[]]
         | 
| 18 | 
            +
                  def create_contacts(companyId, model)        path = "/api/v2/companies/#{companyId}/contacts"
         | 
| 19 | 
            +
                    post(path, model)      end
         | 
| 20 | 
            +
             | 
| 21 | 
            +
                  # Delete a single contact
         | 
| 22 | 
            +
                  #
         | 
| 23 23 | 
             
                  # Mark the existing contact object at this URL as deleted.
         | 
| 24 24 | 
             
                  #
         | 
| 25 25 | 
             
                  # ### Security Policies
         | 
| 26 26 | 
             
                  #
         | 
| 27 | 
            -
                  # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
         | 
| 27 | 
            +
                  # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
         | 
| 28 28 | 
             
                  # @param companyId [Integer] The ID of the company that owns this contact.
         | 
| 29 29 | 
             
                  # @param id [Integer] The ID of the contact you wish to delete.
         | 
| 30 | 
            -
                  # @return [ErrorDetail[]]
         | 
| 31 | 
            -
                  def delete_contact(companyId, id)        path = "/api/v2/companies/#{companyId}/contacts/#{id}"
         | 
| 32 | 
            -
                    delete(path)      end
         | 
| 33 | 
            -
             | 
| 34 | 
            -
                  # Retrieve a single contact
         | 
| 35 | 
            -
                  #
         | 
| 30 | 
            +
                  # @return [ErrorDetail[]]
         | 
| 31 | 
            +
                  def delete_contact(companyId, id)        path = "/api/v2/companies/#{companyId}/contacts/#{id}"
         | 
| 32 | 
            +
                    delete(path)      end
         | 
| 33 | 
            +
             | 
| 34 | 
            +
                  # Retrieve a single contact
         | 
| 35 | 
            +
                  #
         | 
| 36 36 | 
             
                  # Get the contact object identified by this URL.
         | 
| 37 37 | 
             
                  # A 'contact' is a person associated with a company who is designated to handle certain responsibilities of
         | 
| 38 38 | 
             
                  # a tax collecting and filing entity.
         | 
| 39 39 | 
             
                  #
         | 
| 40 40 | 
             
                  # ### Security Policies
         | 
| 41 41 | 
             
                  #
         | 
| 42 | 
            -
                  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
         | 
| 42 | 
            +
                  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
         | 
| 43 43 | 
             
                  # @param companyId [Integer] The ID of the company for this contact
         | 
| 44 44 | 
             
                  # @param id [Integer] The primary key of this contact
         | 
| 45 | 
            -
                  # @return [Object]
         | 
| 46 | 
            -
                  def get_contact(companyId, id)        path = "/api/v2/companies/#{companyId}/contacts/#{id}"
         | 
| 47 | 
            -
                    get(path)      end
         | 
| 48 | 
            -
             | 
| 49 | 
            -
                  # Retrieve contacts for this company
         | 
| 50 | 
            -
                  #
         | 
| 45 | 
            +
                  # @return [Object]
         | 
| 46 | 
            +
                  def get_contact(companyId, id)        path = "/api/v2/companies/#{companyId}/contacts/#{id}"
         | 
| 47 | 
            +
                    get(path)      end
         | 
| 48 | 
            +
             | 
| 49 | 
            +
                  # Retrieve contacts for this company
         | 
| 50 | 
            +
                  #
         | 
| 51 51 | 
             
                  # List all contact objects assigned to this company.
         | 
| 52 52 | 
             
                  #
         | 
| 53 53 | 
             
                  # Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
         | 
| @@ -55,18 +55,18 @@ module AvaTax | |
| 55 55 | 
             
                  #
         | 
| 56 56 | 
             
                  # ### Security Policies
         | 
| 57 57 | 
             
                  #
         | 
| 58 | 
            -
                  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
         | 
| 58 | 
            +
                  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
         | 
| 59 59 | 
             
                  # @param companyId [Integer] The ID of the company that owns these contacts
         | 
| 60 60 | 
             
                  # @param filter [String] A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/).
         | 
| 61 61 | 
             
                  # @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
         | 
| 62 62 | 
             
                  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
         | 
| 63 63 | 
             
                  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
         | 
| 64 | 
            -
                  # @return [FetchResult]
         | 
| 65 | 
            -
                  def list_contacts_by_company(companyId, options={})        path = "/api/v2/companies/#{companyId}/contacts"
         | 
| 66 | 
            -
                    get(path, options)      end
         | 
| 67 | 
            -
             | 
| 68 | 
            -
                  # Retrieve all contacts
         | 
| 69 | 
            -
                  #
         | 
| 64 | 
            +
                  # @return [FetchResult]
         | 
| 65 | 
            +
                  def list_contacts_by_company(companyId, options={})        path = "/api/v2/companies/#{companyId}/contacts"
         | 
| 66 | 
            +
                    get(path, options)      end
         | 
| 67 | 
            +
             | 
| 68 | 
            +
                  # Retrieve all contacts
         | 
| 69 | 
            +
                  #
         | 
| 70 70 | 
             
                  # Get multiple contact objects across all companies.
         | 
| 71 71 | 
             
                  # A 'contact' is a person associated with a company who is designated to handle certain responsibilities of
         | 
| 72 72 | 
             
                  # a tax collecting and filing entity.
         | 
| @@ -76,17 +76,17 @@ module AvaTax | |
| 76 76 | 
             
                  #
         | 
| 77 77 | 
             
                  # ### Security Policies
         | 
| 78 78 | 
             
                  #
         | 
| 79 | 
            -
                  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
         | 
| 79 | 
            +
                  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
         | 
| 80 80 | 
             
                  # @param filter [String] A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/).
         | 
| 81 81 | 
             
                  # @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
         | 
| 82 82 | 
             
                  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
         | 
| 83 83 | 
             
                  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
         | 
| 84 | 
            -
                  # @return [FetchResult]
         | 
| 85 | 
            -
                  def query_contacts(options={})        path = "/api/v2/contacts"
         | 
| 86 | 
            -
                    get(path, options)      end
         | 
| 87 | 
            -
             | 
| 88 | 
            -
                  # Update a single contact
         | 
| 89 | 
            -
                  #
         | 
| 84 | 
            +
                  # @return [FetchResult]
         | 
| 85 | 
            +
                  def query_contacts(options={})        path = "/api/v2/contacts"
         | 
| 86 | 
            +
                    get(path, options)      end
         | 
| 87 | 
            +
             | 
| 88 | 
            +
                  # Update a single contact
         | 
| 89 | 
            +
                  #
         | 
| 90 90 | 
             
                  # Replace the existing contact object at this URL with an updated object.
         | 
| 91 91 | 
             
                  # A 'contact' is a person associated with a company who is designated to handle certain responsibilities of
         | 
| 92 92 | 
             
                  # a tax collecting and filing entity.
         | 
| @@ -95,13 +95,13 @@ module AvaTax | |
| 95 95 | 
             
                  #
         | 
| 96 96 | 
             
                  # ### Security Policies
         | 
| 97 97 | 
             
                  #
         | 
| 98 | 
            -
                  # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
         | 
| 98 | 
            +
                  # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.
         | 
| 99 99 | 
             
                  # @param companyId [Integer] The ID of the company that this contact belongs to.
         | 
| 100 100 | 
             
                  # @param id [Integer] The ID of the contact you wish to update
         | 
| 101 101 | 
             
                  # @param model [Object] The contact you wish to update.
         | 
| 102 | 
            -
                  # @return [Object]
         | 
| 103 | 
            -
                  def update_contact(companyId, id, model)        path = "/api/v2/companies/#{companyId}/contacts/#{id}"
         | 
| 104 | 
            -
                    put(path, model)      end
         | 
| 105 | 
            -
                end
         | 
| 106 | 
            -
              end
         | 
| 102 | 
            +
                  # @return [Object]
         | 
| 103 | 
            +
                  def update_contact(companyId, id, model)        path = "/api/v2/companies/#{companyId}/contacts/#{id}"
         | 
| 104 | 
            +
                    put(path, model)      end
         | 
| 105 | 
            +
                end
         | 
| 106 | 
            +
              end
         | 
| 107 107 | 
             
            end
         | 
| @@ -1,10 +1,10 @@ | |
| 1 | 
            -
            module AvaTax
         | 
| 2 | 
            -
              class Client
         | 
| 3 | 
            -
                module Customers 
         | 
| 4 | 
            -
             | 
| 5 | 
            -
             | 
| 6 | 
            -
                  # Create customers for this company
         | 
| 7 | 
            -
                  #
         | 
| 1 | 
            +
            module AvaTax
         | 
| 2 | 
            +
              class Client
         | 
| 3 | 
            +
                module Customers 
         | 
| 4 | 
            +
             | 
| 5 | 
            +
             | 
| 6 | 
            +
                  # Create customers for this company
         | 
| 7 | 
            +
                  #
         | 
| 8 8 | 
             
                  # Create one or more customers for this company.
         | 
| 9 9 | 
             
                  #
         | 
| 10 10 | 
             
                  # A customer object defines information about a person or business that purchases products from your
         | 
| @@ -16,23 +16,23 @@ module AvaTax | |
| 16 16 | 
             
                  # A nested object such as CustomFields could be specified and created along with the customer object. To fetch the
         | 
| 17 17 | 
             
                  # nested object, please call 'GetCustomer' API with appropriate $include parameters.
         | 
| 18 18 | 
             
                  #
         | 
| 19 | 
            -
                  #  | 
| 20 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 21 | 
            -
                  # certificate related APIs. To check if this  | 
| 22 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 19 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 20 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 21 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 22 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 23 23 | 
             
                  #
         | 
| 24 24 | 
             
                  # ### Security Policies
         | 
| 25 25 | 
             
                  #
         | 
| 26 26 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
         | 
| 27 | 
            -
                  # * This API depends on the following active services | 
| 27 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 28 28 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded this customer
         | 
| 29 29 | 
             
                  # @param model [CustomerModel[]] The list of customer objects to be created
         | 
| 30 | 
            -
                  # @return [CustomerModel[]]
         | 
| 31 | 
            -
                  def create_customers(companyId, model)        path = "/api/v2/companies/#{companyId}/customers"
         | 
| 32 | 
            -
                    post(path, model)      end
         | 
| 33 | 
            -
             | 
| 34 | 
            -
                  # Delete a customer record
         | 
| 35 | 
            -
                  #
         | 
| 30 | 
            +
                  # @return [CustomerModel[]]
         | 
| 31 | 
            +
                  def create_customers(companyId, model)        path = "/api/v2/companies/#{companyId}/customers"
         | 
| 32 | 
            +
                    post(path, model)      end
         | 
| 33 | 
            +
             | 
| 34 | 
            +
                  # Delete a customer record
         | 
| 35 | 
            +
                  #
         | 
| 36 36 | 
             
                  # Deletes the customer object referenced by this URL.
         | 
| 37 37 | 
             
                  #
         | 
| 38 38 | 
             
                  # A customer object defines information about a person or business that purchases products from your
         | 
| @@ -41,23 +41,23 @@ module AvaTax | |
| 41 41 | 
             
                  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
         | 
| 42 42 | 
             
                  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
         | 
| 43 43 | 
             
                  #
         | 
| 44 | 
            -
                  #  | 
| 45 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 46 | 
            -
                  # certificate related APIs. To check if this  | 
| 47 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 44 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 45 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 46 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 47 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 48 48 | 
             
                  #
         | 
| 49 49 | 
             
                  # ### Security Policies
         | 
| 50 50 | 
             
                  #
         | 
| 51 51 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
         | 
| 52 | 
            -
                  # * This API depends on the following active services | 
| 52 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 53 53 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded this customer
         | 
| 54 54 | 
             
                  # @param customerCode [String] The unique code representing this customer
         | 
| 55 | 
            -
                  # @return [Object]
         | 
| 56 | 
            -
                  def delete_customer(companyId, customerCode)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
         | 
| 57 | 
            -
                    delete(path)      end
         | 
| 58 | 
            -
             | 
| 59 | 
            -
                  # Retrieve a single customer
         | 
| 60 | 
            -
                  #
         | 
| 55 | 
            +
                  # @return [Object]
         | 
| 56 | 
            +
                  def delete_customer(companyId, customerCode)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
         | 
| 57 | 
            +
                    delete(path)      end
         | 
| 58 | 
            +
             | 
| 59 | 
            +
                  # Retrieve a single customer
         | 
| 60 | 
            +
                  #
         | 
| 61 61 | 
             
                  # Retrieve the customer identified by this URL.
         | 
| 62 62 | 
             
                  #
         | 
| 63 63 | 
             
                  # A customer object defines information about a person or business that purchases products from your
         | 
| @@ -72,24 +72,24 @@ module AvaTax | |
| 72 72 | 
             
                  # * CustomFields - Fetch a list of custom fields associated to this customer.
         | 
| 73 73 | 
             
                  # * attributes - Retrieves all attributes applied to the customer.
         | 
| 74 74 | 
             
                  #
         | 
| 75 | 
            -
                  #  | 
| 76 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 77 | 
            -
                  # certificate related APIs. To check if this  | 
| 78 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 75 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 76 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 77 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 78 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 79 79 | 
             
                  #
         | 
| 80 80 | 
             
                  # ### Security Policies
         | 
| 81 81 | 
             
                  #
         | 
| 82 82 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
         | 
| 83 | 
            -
                  # * This API depends on the following active services | 
| 83 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 84 84 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded this customer
         | 
| 85 85 | 
             
                  # @param customerCode [String] The unique code representing this customer
         | 
| 86 86 | 
             
                  # @param include [String] Specify optional additional objects to include in this fetch request
         | 
| 87 | 
            -
                  # @return [Object]
         | 
| 88 | 
            -
                  def get_customer(companyId, customerCode, options={})        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
         | 
| 89 | 
            -
                    get(path, options)      end
         | 
| 90 | 
            -
             | 
| 91 | 
            -
                  # Link attributes to a customer
         | 
| 92 | 
            -
                  #
         | 
| 87 | 
            +
                  # @return [Object]
         | 
| 88 | 
            +
                  def get_customer(companyId, customerCode, options={})        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
         | 
| 89 | 
            +
                    get(path, options)      end
         | 
| 90 | 
            +
             | 
| 91 | 
            +
                  # Link attributes to a customer
         | 
| 92 | 
            +
                  #
         | 
| 93 93 | 
             
                  # Link one or many attributes to a customer.
         | 
| 94 94 | 
             
                  #
         | 
| 95 95 | 
             
                  # A customer may have multiple attributes that control its behavior. You may link or unlink attributes to a
         | 
| @@ -101,24 +101,24 @@ module AvaTax | |
| 101 101 | 
             
                  # identify any certificates linked to this customer object. If any certificate applies to the transaction,
         | 
| 102 102 | 
             
                  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
         | 
| 103 103 | 
             
                  #
         | 
| 104 | 
            -
                  #  | 
| 105 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 106 | 
            -
                  # certificate related APIs. To check if this  | 
| 107 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 104 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 105 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 106 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 107 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 108 108 | 
             
                  #
         | 
| 109 109 | 
             
                  # ### Security Policies
         | 
| 110 110 | 
             
                  #
         | 
| 111 111 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
         | 
| 112 | 
            -
                  # * This API depends on the following active services | 
| 112 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 113 113 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded the provided customer
         | 
| 114 114 | 
             
                  # @param customerCode [String] The unique code representing the current customer
         | 
| 115 115 | 
             
                  # @param model [CustomerAttributeModel[]] The list of attributes to link to the customer.
         | 
| 116 | 
            -
                  # @return [FetchResult]
         | 
| 117 | 
            -
                  def link_attributes_to_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/link"
         | 
| 118 | 
            -
                    put(path, model)      end
         | 
| 119 | 
            -
             | 
| 120 | 
            -
                  # Link certificates to a customer
         | 
| 121 | 
            -
                  #
         | 
| 116 | 
            +
                  # @return [FetchResult]
         | 
| 117 | 
            +
                  def link_attributes_to_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/link"
         | 
| 118 | 
            +
                    put(path, model)      end
         | 
| 119 | 
            +
             | 
| 120 | 
            +
                  # Link certificates to a customer
         | 
| 121 | 
            +
                  #
         | 
| 122 122 | 
             
                  # Link one or more certificates to a customer.
         | 
| 123 123 | 
             
                  #
         | 
| 124 124 | 
             
                  # A customer object defines information about a person or business that purchases products from your
         | 
| @@ -127,24 +127,24 @@ module AvaTax | |
| 127 127 | 
             
                  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
         | 
| 128 128 | 
             
                  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
         | 
| 129 129 | 
             
                  #
         | 
| 130 | 
            -
                  #  | 
| 131 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 132 | 
            -
                  # certificate related APIs. To check if this  | 
| 133 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 130 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 131 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 132 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 133 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 134 134 | 
             
                  #
         | 
| 135 135 | 
             
                  # ### Security Policies
         | 
| 136 136 | 
             
                  #
         | 
| 137 137 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
         | 
| 138 | 
            -
                  # * This API depends on the following active services | 
| 138 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 139 139 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded this customer
         | 
| 140 140 | 
             
                  # @param customerCode [String] The unique code representing this customer
         | 
| 141 141 | 
             
                  # @param model [Object] The list of certificates to link to this customer
         | 
| 142 | 
            -
                  # @return [FetchResult]
         | 
| 143 | 
            -
                  def link_certificates_to_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/link"
         | 
| 144 | 
            -
                    post(path, model)      end
         | 
| 145 | 
            -
             | 
| 146 | 
            -
                  # Link two customer records together
         | 
| 147 | 
            -
                  #
         | 
| 142 | 
            +
                  # @return [FetchResult]
         | 
| 143 | 
            +
                  def link_certificates_to_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/link"
         | 
| 144 | 
            +
                    post(path, model)      end
         | 
| 145 | 
            +
             | 
| 146 | 
            +
                  # Link two customer records together
         | 
| 147 | 
            +
                  #
         | 
| 148 148 | 
             
                  # Links a Ship-To customer record with a Bill-To customer record.
         | 
| 149 149 | 
             
                  #
         | 
| 150 150 | 
             
                  # Customer records represent businesses or individuals who can provide exemption certificates. Some customers
         | 
| @@ -162,16 +162,16 @@ module AvaTax | |
| 162 162 | 
             
                  # ### Security Policies
         | 
| 163 163 | 
             
                  #
         | 
| 164 164 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
         | 
| 165 | 
            -
                  # * This API depends on the following active services | 
| 165 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 166 166 | 
             
                  # @param companyId [Integer] The unique ID number of the company defining customers.
         | 
| 167 167 | 
             
                  # @param code [String] The code of the bill-to customer to link.
         | 
| 168 168 | 
             
                  # @param model [Object] A list of information about ship-to customers to link to this bill-to customer.
         | 
| 169 | 
            -
                  # @return [Object]
         | 
| 170 | 
            -
                  def link_ship_to_customers_to_bill_customer(companyId, code, model)        path = "/api/v2/companies/#{companyId}/customers/billto/#{code}/shipto/link"
         | 
| 171 | 
            -
                    post(path, model)      end
         | 
| 172 | 
            -
             | 
| 173 | 
            -
                  # Retrieve a customer's attributes
         | 
| 174 | 
            -
                  #
         | 
| 169 | 
            +
                  # @return [Object]
         | 
| 170 | 
            +
                  def link_ship_to_customers_to_bill_customer(companyId, code, model)        path = "/api/v2/companies/#{companyId}/customers/billto/#{code}/shipto/link"
         | 
| 171 | 
            +
                    post(path, model)      end
         | 
| 172 | 
            +
             | 
| 173 | 
            +
                  # Retrieve a customer's attributes
         | 
| 174 | 
            +
                  #
         | 
| 175 175 | 
             
                  # Retrieve the attributes linked to the customer identified by this URL.
         | 
| 176 176 | 
             
                  #
         | 
| 177 177 | 
             
                  # A customer may have multiple attributes that control its behavior. You may link or unlink attributes to a
         | 
| @@ -183,23 +183,23 @@ module AvaTax | |
| 183 183 | 
             
                  # identify any certificates linked to this customer object. If any certificate applies to the transaction,
         | 
| 184 184 | 
             
                  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
         | 
| 185 185 | 
             
                  #
         | 
| 186 | 
            -
                  #  | 
| 187 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 188 | 
            -
                  # certificate related APIs. To check if this  | 
| 189 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 186 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 187 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 188 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 189 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 190 190 | 
             
                  #
         | 
| 191 191 | 
             
                  # ### Security Policies
         | 
| 192 192 | 
             
                  #
         | 
| 193 193 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
         | 
| 194 | 
            -
                  # * This API depends on the following active services | 
| 194 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 195 195 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded the provided customer
         | 
| 196 196 | 
             
                  # @param customerCode [String] The unique code representing the current customer
         | 
| 197 | 
            -
                  # @return [FetchResult]
         | 
| 198 | 
            -
                  def list_attributes_for_customer(companyId, customerCode)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes"
         | 
| 199 | 
            -
                    get(path)      end
         | 
| 200 | 
            -
             | 
| 201 | 
            -
                  # List certificates linked to a customer
         | 
| 202 | 
            -
                  #
         | 
| 197 | 
            +
                  # @return [FetchResult]
         | 
| 198 | 
            +
                  def list_attributes_for_customer(companyId, customerCode)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes"
         | 
| 199 | 
            +
                    get(path)      end
         | 
| 200 | 
            +
             | 
| 201 | 
            +
                  # List certificates linked to a customer
         | 
| 202 | 
            +
                  #
         | 
| 203 203 | 
             
                  # List all certificates linked to a customer.
         | 
| 204 204 | 
             
                  #
         | 
| 205 205 | 
             
                  # A customer object defines information about a person or business that purchases products from your
         | 
| @@ -208,15 +208,15 @@ module AvaTax | |
| 208 208 | 
             
                  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
         | 
| 209 209 | 
             
                  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
         | 
| 210 210 | 
             
                  #
         | 
| 211 | 
            -
                  #  | 
| 212 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 213 | 
            -
                  # certificate related APIs. To check if this  | 
| 214 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 211 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 212 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 213 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 214 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 215 215 | 
             
                  #
         | 
| 216 216 | 
             
                  # ### Security Policies
         | 
| 217 217 | 
             
                  #
         | 
| 218 218 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
         | 
| 219 | 
            -
                  # * This API depends on the following active services | 
| 219 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 220 220 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded this customer
         | 
| 221 221 | 
             
                  # @param customerCode [String] The unique code representing this customer
         | 
| 222 222 | 
             
                  # @param include [String] OPTIONAL: A comma separated list of special fetch options. You can specify one or more of the following:      * customers - Retrieves the list of customers linked to the certificate.   * po_numbers - Retrieves all PO numbers tied to the certificate.   * attributes - Retrieves all attributes applied to the certificate.
         | 
| @@ -224,12 +224,12 @@ module AvaTax | |
| 224 224 | 
             
                  # @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
         | 
| 225 225 | 
             
                  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
         | 
| 226 226 | 
             
                  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
         | 
| 227 | 
            -
                  # @return [FetchResult]
         | 
| 228 | 
            -
                  def list_certificates_for_customer(companyId, customerCode, options={})        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates"
         | 
| 229 | 
            -
                    get(path, options)      end
         | 
| 230 | 
            -
             | 
| 231 | 
            -
                  # List valid certificates for a location
         | 
| 232 | 
            -
                  #
         | 
| 227 | 
            +
                  # @return [FetchResult]
         | 
| 228 | 
            +
                  def list_certificates_for_customer(companyId, customerCode, options={})        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates"
         | 
| 229 | 
            +
                    get(path, options)      end
         | 
| 230 | 
            +
             | 
| 231 | 
            +
                  # List valid certificates for a location
         | 
| 232 | 
            +
                  #
         | 
| 233 233 | 
             
                  # List valid certificates linked to a customer in a particular country and region.
         | 
| 234 234 | 
             
                  #
         | 
| 235 235 | 
             
                  # This API is intended to help identify whether a customer has already provided a certificate that
         | 
| @@ -241,25 +241,25 @@ module AvaTax | |
| 241 241 | 
             
                  # a CertExpress invitation link so that the customer can upload proof of their exemption certificate. Please
         | 
| 242 242 | 
             
                  # see the `CreateCertExpressInvitation` API to create an invitation link for this customer.
         | 
| 243 243 | 
             
                  #
         | 
| 244 | 
            -
                  #  | 
| 245 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 246 | 
            -
                  # certificate related APIs. To check if this  | 
| 247 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 244 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 245 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 246 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 247 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 248 248 | 
             
                  #
         | 
| 249 249 | 
             
                  # ### Security Policies
         | 
| 250 250 | 
             
                  #
         | 
| 251 251 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
         | 
| 252 | 
            -
                  # * This API depends on the following active services | 
| 252 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 253 253 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded this customer
         | 
| 254 254 | 
             
                  # @param customerCode [String] The unique code representing this customer
         | 
| 255 255 | 
             
                  # @param country [String] Search for certificates matching this country. Uses the ISO 3166 two character country code.
         | 
| 256 256 | 
             
                  # @param region [String] Search for certificates matching this region. Uses the ISO 3166 two or three character state, region, or province code.
         | 
| 257 | 
            -
                  # @return [Object]
         | 
| 258 | 
            -
                  def list_valid_certificates_for_customer(companyId, customerCode, country, region)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/#{country}/#{region}"
         | 
| 259 | 
            -
                    get(path)      end
         | 
| 260 | 
            -
             | 
| 261 | 
            -
                  # List all customers for this company
         | 
| 262 | 
            -
                  #
         | 
| 257 | 
            +
                  # @return [Object]
         | 
| 258 | 
            +
                  def list_valid_certificates_for_customer(companyId, customerCode, country, region)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/#{country}/#{region}"
         | 
| 259 | 
            +
                    get(path)      end
         | 
| 260 | 
            +
             | 
| 261 | 
            +
                  # List all customers for this company
         | 
| 262 | 
            +
                  #
         | 
| 263 263 | 
             
                  # List all customers recorded by this company matching the specified criteria.
         | 
| 264 264 | 
             
                  #
         | 
| 265 265 | 
             
                  # A customer object defines information about a person or business that purchases products from your
         | 
| @@ -273,27 +273,27 @@ module AvaTax | |
| 273 273 | 
             
                  # * Certificates - Fetch a list of certificates linked to this customer.
         | 
| 274 274 | 
             
                  # * attributes - Retrieves all attributes applied to the customer.
         | 
| 275 275 | 
             
                  #
         | 
| 276 | 
            -
                  #  | 
| 277 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 278 | 
            -
                  # certificate related APIs. To check if this  | 
| 279 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 276 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 277 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 278 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 279 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 280 280 | 
             
                  #
         | 
| 281 281 | 
             
                  # ### Security Policies
         | 
| 282 282 | 
             
                  #
         | 
| 283 283 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
         | 
| 284 | 
            -
                  # * This API depends on the following active services | 
| 284 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 285 285 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded this customer
         | 
| 286 286 | 
             
                  # @param include [String] OPTIONAL - You can specify the value `certificates` to fetch information about certificates linked to the customer.
         | 
| 287 287 | 
             
                  # @param filter [String] A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/).<br />*Not filterable:* shipTos
         | 
| 288 288 | 
             
                  # @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
         | 
| 289 289 | 
             
                  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
         | 
| 290 290 | 
             
                  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
         | 
| 291 | 
            -
                  # @return [FetchResult]
         | 
| 292 | 
            -
                  def query_customers(companyId, options={})        path = "/api/v2/companies/#{companyId}/customers"
         | 
| 293 | 
            -
                    get(path, options)      end
         | 
| 294 | 
            -
             | 
| 295 | 
            -
                  # Unlink attributes from a customer
         | 
| 296 | 
            -
                  #
         | 
| 291 | 
            +
                  # @return [FetchResult]
         | 
| 292 | 
            +
                  def query_customers(companyId, options={})        path = "/api/v2/companies/#{companyId}/customers"
         | 
| 293 | 
            +
                    get(path, options)      end
         | 
| 294 | 
            +
             | 
| 295 | 
            +
                  # Unlink attributes from a customer
         | 
| 296 | 
            +
                  #
         | 
| 297 297 | 
             
                  # Unlink one or many attributes from a customer.
         | 
| 298 298 | 
             
                  #
         | 
| 299 299 | 
             
                  # A customer may have multiple attributes that control its behavior. You may link or unlink attributes to a
         | 
| @@ -305,24 +305,24 @@ module AvaTax | |
| 305 305 | 
             
                  # identify any certificates linked to this customer object. If any certificate applies to the transaction,
         | 
| 306 306 | 
             
                  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
         | 
| 307 307 | 
             
                  #
         | 
| 308 | 
            -
                  #  | 
| 309 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 310 | 
            -
                  # certificate related APIs. To check if this  | 
| 311 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 308 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 309 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 310 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 311 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 312 312 | 
             
                  #
         | 
| 313 313 | 
             
                  # ### Security Policies
         | 
| 314 314 | 
             
                  #
         | 
| 315 315 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
         | 
| 316 | 
            -
                  # * This API depends on the following active services | 
| 316 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 317 317 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded the customer
         | 
| 318 318 | 
             
                  # @param customerCode [String] The unique code representing the current customer
         | 
| 319 319 | 
             
                  # @param model [CustomerAttributeModel[]] The list of attributes to unlink from the customer.
         | 
| 320 | 
            -
                  # @return [FetchResult]
         | 
| 321 | 
            -
                  def unlink_attributes_from_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/unlink"
         | 
| 322 | 
            -
                    put(path, model)      end
         | 
| 323 | 
            -
             | 
| 324 | 
            -
                  # Unlink certificates from a customer
         | 
| 325 | 
            -
                  #
         | 
| 320 | 
            +
                  # @return [FetchResult]
         | 
| 321 | 
            +
                  def unlink_attributes_from_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/attributes/unlink"
         | 
| 322 | 
            +
                    put(path, model)      end
         | 
| 323 | 
            +
             | 
| 324 | 
            +
                  # Unlink certificates from a customer
         | 
| 325 | 
            +
                  #
         | 
| 326 326 | 
             
                  # Remove one or more certificates to a customer.
         | 
| 327 327 | 
             
                  #
         | 
| 328 328 | 
             
                  # A customer object defines information about a person or business that purchases products from your
         | 
| @@ -331,24 +331,24 @@ module AvaTax | |
| 331 331 | 
             
                  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
         | 
| 332 332 | 
             
                  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
         | 
| 333 333 | 
             
                  #
         | 
| 334 | 
            -
                  #  | 
| 335 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 336 | 
            -
                  # certificate related APIs. To check if this  | 
| 337 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 334 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 335 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 336 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 337 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 338 338 | 
             
                  #
         | 
| 339 339 | 
             
                  # ### Security Policies
         | 
| 340 340 | 
             
                  #
         | 
| 341 341 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
         | 
| 342 | 
            -
                  # * This API depends on the following active services | 
| 342 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 343 343 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded this customer
         | 
| 344 344 | 
             
                  # @param customerCode [String] The unique code representing this customer
         | 
| 345 345 | 
             
                  # @param model [Object] The list of certificates to link to this customer
         | 
| 346 | 
            -
                  # @return [FetchResult]
         | 
| 347 | 
            -
                  def unlink_certificates_from_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/unlink"
         | 
| 348 | 
            -
                    post(path, model)      end
         | 
| 349 | 
            -
             | 
| 350 | 
            -
                  # Update a single customer
         | 
| 351 | 
            -
                  #
         | 
| 346 | 
            +
                  # @return [FetchResult]
         | 
| 347 | 
            +
                  def unlink_certificates_from_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}/certificates/unlink"
         | 
| 348 | 
            +
                    post(path, model)      end
         | 
| 349 | 
            +
             | 
| 350 | 
            +
                  # Update a single customer
         | 
| 351 | 
            +
                  #
         | 
| 352 352 | 
             
                  # Replace the customer object at this URL with a new record.
         | 
| 353 353 | 
             
                  #
         | 
| 354 354 | 
             
                  # A customer object defines information about a person or business that purchases products from your
         | 
| @@ -357,21 +357,21 @@ module AvaTax | |
| 357 357 | 
             
                  # identify any certificates linked to this `customer` object. If any certificate applies to the transaction,
         | 
| 358 358 | 
             
                  # AvaTax will record the appropriate elements of the transaction as exempt and link it to the `certificate`.
         | 
| 359 359 | 
             
                  #
         | 
| 360 | 
            -
                  #  | 
| 361 | 
            -
                  # Companies that do not have this storage system set up will  | 
| 362 | 
            -
                  # certificate related APIs. To check if this  | 
| 363 | 
            -
                  # storage for this company, call `RequestCertificateSetup`.
         | 
| 360 | 
            +
                  # Before you can use any exemption certificates endpoints, you must set up your company for exemption certificate data storage.
         | 
| 361 | 
            +
                  # Companies that do not have this storage system set up will see `CertCaptureNotConfiguredError` when they call exemption
         | 
| 362 | 
            +
                  # certificate related APIs. To check if this is set up for a company, call `GetCertificateSetup`. To request setup of exemption
         | 
| 363 | 
            +
                  # certificate storage for this company, call `RequestCertificateSetup`.
         | 
| 364 364 | 
             
                  #
         | 
| 365 365 | 
             
                  # ### Security Policies
         | 
| 366 366 | 
             
                  #
         | 
| 367 367 | 
             
                  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
         | 
| 368 | 
            -
                  # * This API depends on the following active services | 
| 368 | 
            +
                  # * This API depends on the following active services:*Required* (all): AvaTaxPro.
         | 
| 369 369 | 
             
                  # @param companyId [Integer] The unique ID number of the company that recorded this customer
         | 
| 370 370 | 
             
                  # @param customerCode [String] The unique code representing this customer
         | 
| 371 371 | 
             
                  # @param model [Object] The new customer model that will replace the existing record at this URL
         | 
| 372 | 
            -
                  # @return [Object]
         | 
| 373 | 
            -
                  def update_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
         | 
| 374 | 
            -
                    put(path, model)      end
         | 
| 375 | 
            -
                end
         | 
| 376 | 
            -
              end
         | 
| 372 | 
            +
                  # @return [Object]
         | 
| 373 | 
            +
                  def update_customer(companyId, customerCode, model)        path = "/api/v2/companies/#{companyId}/customers/#{customerCode}"
         | 
| 374 | 
            +
                    put(path, model)      end
         | 
| 375 | 
            +
                end
         | 
| 376 | 
            +
              end
         | 
| 377 377 | 
             
            end
         |