# avalara_sdk - the Unified Java SDK for next gen Avalara services. Unified SDK consists of services on top of which the Avalara Compliance Cloud platform is built. These services are foundational and provide functionality such as einvoicing. - Package version: 24.12.0 ## Installation ```shell gem install avalara_sdk ``` ## Getting Started Please follow the [installation](#installation) procedure and then run the following code: ```ruby require 'time' require 'avalara_sdk' # setup authorization config = AvalaraSdk::Configuration.new config.environment = 'sandbox' # Set the environment (sandbox, production, etc.) config.app_name = 'testApp' # Set your application name config.app_version = '1.2.3' # Set your application version config.machine_name = 'testMachine' # Set your machine name config.bearer_token = 'Your_Bearer_token' # Set your OAuth2 Bearer Token (replace with actual token) api_client = AvalaraSdk::ApiClient.new config api_instance = AvalaraSdk::EInvoicing::V1::MandatesApi.new api_client get_mandates_request = AvalaraSdk::EInvoicing::V1::GetMandatesRequest.new get_mandates_request.set_x_avalara_client('x_avalara_client_example') begin # Retrieve geolocation information for a specified address result = api_instance.get_mandates(get_mandates_request) p result rescue AvalaraSdk::ApiError => e puts "Error when calling MandatesApi->get_mandates: #{e}" end ``` ## Documentation for API Endpoints ### EInvoicing V1 API Documentation | Class | Method | HTTP request | Description | | -------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | | _DataInputFieldsApi_ | [**get_data_input_fields**](docs/EInvoicing/V1/DataInputFieldsApi.md#get_data_input_fields) | **GET** /data-input-fields | Returns the optionality of document fields for different country mandates | | _DocumentsApi_ | [**download_document**](docs/EInvoicing/V1/DocumentsApi.md#download_document) | **GET** /documents/{documentId}/$download | Returns a copy of the document | | _DocumentsApi_ | [**fetch_documents**](docs/EInvoicing/V1/DocumentsApi.md#fetch_documents) | **POST** /documents/$fetch | Fetch the inbound document from a tax authority | | _DocumentsApi_ | [**get_document_list**](docs/EInvoicing/V1/DocumentsApi.md#get_document_list) | **GET** /documents | Returns a summary of documents for a date range | | _DocumentsApi_ | [**get_document_status**](docs/EInvoicing/V1/DocumentsApi.md#get_document_status) | **GET** /documents/{documentId}/status | Checks the status of a document | | _DocumentsApi_ | [**submit_document**](docs/EInvoicing/V1/DocumentsApi.md#submit_document) | **POST** /documents | Submits a document to Avalara E-Invoicing API | | _InteropApi_ | [**submit_interop_document**](docs/EInvoicing/V1/InteropApi.md#submit_interop_document) | **POST** /interop/documents | Submit a document | | _MandatesApi_ | [**get_mandate_data_input_fields**](docs/EInvoicing/V1/MandatesApi.md#get_mandate_data_input_fields) | **GET** /mandates/{mandateId}/data-input-fields | Returns document field information for a country mandate, a selected document type, and its version | | _MandatesApi_ | [**get_mandates**](docs/EInvoicing/V1/MandatesApi.md#get_mandates) | **GET** /mandates | List country mandates that are supported by the Avalara E-Invoicing platform | | _TradingPartnersApi_ | [**batch_search_participants**](docs/EInvoicing/V1/TradingPartnersApi.md#batch_search_participants) | **POST** /trading-partners/batch-searches | Creates a batch search and performs a batch search in the directory for participants in the background. | | _TradingPartnersApi_ | [**download_batch_search_report**](docs/EInvoicing/V1/TradingPartnersApi.md#download_batch_search_report) | **GET** /trading-partners/batch-searches/{id}/$download-results | Download batch search results in a csv file. | | _TradingPartnersApi_ | [**get_batch_search_detail**](docs/EInvoicing/V1/TradingPartnersApi.md#get_batch_search_detail) | **GET** /trading-partners/batch-searches/{id} | Get the batch search details for a given id. | | _TradingPartnersApi_ | [**list_batch_searches**](docs/EInvoicing/V1/TradingPartnersApi.md#list_batch_searches) | **GET** /trading-partners/batch-searches | List all batch searches that were previously submitted. | | _TradingPartnersApi_ | [**search_participants**](docs/EInvoicing/V1/TradingPartnersApi.md#search_participants) | **GET** /trading-partners | Returns a list of participants matching the input query. | ## Documentation for Models ### EInvoicing V1 Model Documentation - [models.BadDownloadRequest](docs/EInvoicing/V1/BadDownloadRequest.md) - [models.BadRequest](docs/EInvoicing/V1/BadRequest.md) - [models.BatchSearch](docs/EInvoicing/V1/BatchSearch.md) - [models.BatchSearchListResponse](docs/EInvoicing/V1/BatchSearchListResponse.md) - [models.ConditionalForField](docs/EInvoicing/V1/ConditionalForField.md) - [models.DataInputField](docs/EInvoicing/V1/DataInputField.md) - [models.DataInputFieldNotUsedFor](docs/EInvoicing/V1/DataInputFieldNotUsedFor.md) - [models.DataInputFieldOptionalFor](docs/EInvoicing/V1/DataInputFieldOptionalFor.md) - [models.DataInputFieldRequiredFor](docs/EInvoicing/V1/DataInputFieldRequiredFor.md) - [models.DataInputFieldsResponse](docs/EInvoicing/V1/DataInputFieldsResponse.md) - [models.DirectorySearchResponse](docs/EInvoicing/V1/DirectorySearchResponse.md) - [models.DirectorySearchResponseValueInner](docs/EInvoicing/V1/DirectorySearchResponseValueInner.md) - [models.DirectorySearchResponseValueInnerAddressesInner](docs/EInvoicing/V1/DirectorySearchResponseValueInnerAddressesInner.md) - [models.DirectorySearchResponseValueInnerIdentifiersInner](docs/EInvoicing/V1/DirectorySearchResponseValueInnerIdentifiersInner.md) - [models.DirectorySearchResponseValueInnerSupportedDocumentTypesInner](docs/EInvoicing/V1/DirectorySearchResponseValueInnerSupportedDocumentTypesInner.md) - [models.DocumentFetch](docs/EInvoicing/V1/DocumentFetch.md) - [models.DocumentFetchRequest](docs/EInvoicing/V1/DocumentFetchRequest.md) - [models.DocumentFetchRequestDataInner](docs/EInvoicing/V1/DocumentFetchRequestDataInner.md) - [models.DocumentFetchRequestMetadata](docs/EInvoicing/V1/DocumentFetchRequestMetadata.md) - [models.DocumentListResponse](docs/EInvoicing/V1/DocumentListResponse.md) - [models.DocumentStatusResponse](docs/EInvoicing/V1/DocumentStatusResponse.md) - [models.DocumentSubmissionError](docs/EInvoicing/V1/DocumentSubmissionError.md) - [models.DocumentSubmitResponse](docs/EInvoicing/V1/DocumentSubmitResponse.md) - [models.DocumentSummary](docs/EInvoicing/V1/DocumentSummary.md) - [models.ErrorResponse](docs/EInvoicing/V1/ErrorResponse.md) - [models.ForbiddenError](docs/EInvoicing/V1/ForbiddenError.md) - [models.InputDataFormats](docs/EInvoicing/V1/InputDataFormats.md) - [models.InternalServerError](docs/EInvoicing/V1/InternalServerError.md) - [models.Mandate](docs/EInvoicing/V1/Mandate.md) - [models.MandateDataInputField](docs/EInvoicing/V1/MandateDataInputField.md) - [models.MandateDataInputFieldNamespace](docs/EInvoicing/V1/MandateDataInputFieldNamespace.md) - [models.MandatesResponse](docs/EInvoicing/V1/MandatesResponse.md) - [models.NotFoundError](docs/EInvoicing/V1/NotFoundError.md) - [models.NotUsedForField](docs/EInvoicing/V1/NotUsedForField.md) - [models.RequiredWhenField](docs/EInvoicing/V1/RequiredWhenField.md) - [models.StatusEvent](docs/EInvoicing/V1/StatusEvent.md) - [models.SubmitDocumentMetadata](docs/EInvoicing/V1/SubmitDocumentMetadata.md) - [models.SubmitInteropDocument202Response](docs/EInvoicing/V1/SubmitInteropDocument202Response.md) - [models.WorkflowIds](docs/EInvoicing/V1/WorkflowIds.md)