openapi: 3.0.0
info:
title: Avalara AvaTax TaxCodes API
description: "Welcome to the AvaTax API Postman Collection! \n \nThis collection provides a REST interface to Avalara's enterprise tax service, AvaTax. You can use this collection to interact with the AvaTax APIs while building your integration. \n\nWhile using this collection, we recommend following along with our Developer Implementation Guide: https://developer.avalara.com/avatax/dev-guide/ \n\nAPI requests are grouped into folders to help you navigate through the collection easily. Each request includes a description of the operation and its associated URL, method, headers, and example request body (if applicable). \n\nThe collection uses Postman environment variables for the API base URL and credentials, making it easy to switch between the sandbox and production environments.\n\nTo get started, ensure you have the necessary credentials. Then, update the 'username' and 'password' variables in the 'Authorization' or 'Variables' section with your credentials if you prefer username and password authentication. Alternatively, you can use the 'account_id' and 'license_key' variables for authentication using an account ID and license key.\n\nWe recommend starting with the Ping API, located within the Utilities folder, to test your connectivity and ensure your authentication credentials are valid. The Ping API is a simple way to check if you can successfully communicate with AvaTax.\n\nCollection Variables:\n- Base URL: The base URL for the API. By default, it is set to the sandbox URL - https://sandbox-rest.avatax.com. \n - Change this variable to switch between sandbox and production environments:\n - Sandbox URL: https://sandbox-rest.avatax.com\n\t\t- Production URL: https://rest.avatax.com\n- Username: If you are using username and password authentication, enter your username for AvaTax.\n- Password: If you are using username and password authentication, enter your password for AvaTax.\n- Account ID: If you are using account ID and license key authentication, enter your AvaTax account ID. \n - Be sure to also replace the username variable in the authorization tab with account_id.\n- License Key: If you are using account ID and license key authentication, enter your AvaTax license key.\n - Be sure to also replace the password variable in the authorization tab with license_key.\n\nHappy testing with AvaTax APIs!"
version: 1.0.0
servers:
- url: http://{{baseurl}}
security:
- basicAuth: []
tags:
- name: TaxCodes
paths:
/api/v2/companies/{companyId}/taxcodes:
post:
tags:
- TaxCodes
summary: Avalara CreateTaxCodes
description: 'Create one or more new taxcode objects attached to this company.
A ''TaxCode'' represents a uniquely identified type of product, good, or service.
Avalara supports correct tax rates and taxability rules for all TaxCodes in all supported jurisdictions.
If you identify your products by tax code in your ''Create Transaction'' API calls, Avalara will correctly calculate tax rates and
taxability rules for this product in all supported jurisdictions.
### Security Policies
* This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
'
requestBody:
content:
application/json:
schema:
type: object
example:
id: 56789
companyId: 12345
taxCode: PS081282
taxCodeTypeId: P
description: Yarn
parentTaxCode: PS080100
isPhysical: true
goodsServiceCode: 0
entityUseCode: ''
isActive: true
isSSTCertified: false
parameters:
- name: Content-Type
in: header
schema:
type: string
example: application/json
- name: X-Avalara-Client
in: header
schema:
type: string
description: Identifies the software you are using to call this API. For more information on the client header, see [Client Headers](https://developer.avalara.com/avatax/client-headers/).
example: AvaTax Postman Collection
- name: companyId
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
get:
tags:
- TaxCodes
summary: Avalara ListTaxCodesByCompany
description: "List all taxcode objects attached to this company.\nA 'TaxCode' represents a uniquely identified type of product, good, or service.\nAvalara supports correct tax rates and taxability rules for all TaxCodes in all supported jurisdictions.\nIf you identify your products by tax code in your 'Create Transaction' API calls, Avalara will correctly calculate tax rates and\ntaxability rules for this product in all supported jurisdictions.\n \nSearch 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/) .\nPaginate your results using the `$top`, `$skip`, and `$orderby` parameters.\n\n### Security Policies\n\n* This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ECMAccountUser, ECMCompanyUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.\n"
parameters:
- name: X-Avalara-Client
in: header
schema:
type: string
description: Identifies the software you are using to call this API. For more information on the client header, see [Client Headers](https://developer.avalara.com/avatax/client-headers/).
example: AvaTax Postman Collection
- name: companyId
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
/api/v2/companies/{companyId}/taxcodes/{id}:
delete:
tags:
- TaxCodes
summary: Avalara DeleteTaxCode
description: 'Marks the existing TaxCode object at this URL as deleted.
### Security Policies
* This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
'
parameters:
- name: X-Avalara-Client
in: header
schema:
type: string
description: Identifies the software you are using to call this API. For more information on the client header, see [Client Headers](https://developer.avalara.com/avatax/client-headers/).
example: AvaTax Postman Collection
- name: companyId
in: path
schema:
type: string
required: true
- name: id
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
get:
tags:
- TaxCodes
summary: Avalara GetTaxCode
description: 'Get the taxcode object identified by this URL.
A ''TaxCode'' represents a uniquely identified type of product, good, or service.
Avalara supports correct tax rates and taxability rules for all TaxCodes in all supported jurisdictions.
If you identify your products by tax code in your ''Create Transaction'' API calls, Avalara will correctly calculate tax rates and
taxability rules for this product in all supported jurisdictions.
### Security Policies
* This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ECMAccountUser, ECMCompanyUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
'
parameters:
- name: X-Avalara-Client
in: header
schema:
type: string
description: Identifies the software you are using to call this API. For more information on the client header, see [Client Headers](https://developer.avalara.com/avatax/client-headers/).
example: AvaTax Postman Collection
- name: companyId
in: path
schema:
type: string
required: true
- name: id
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
put:
tags:
- TaxCodes
summary: Avalara UpdateTaxCode
description: 'Replace the existing taxcode object at this URL with an updated object.
A ''TaxCode'' represents a uniquely identified type of product, good, or service.
Avalara supports correct tax rates and taxability rules for all TaxCodes in all supported jurisdictions.
If you identify your products by tax code in your ''Create Transaction'' API calls, Avalara will correctly calculate tax rates and
taxability rules for this product in all supported jurisdictions.
All data from the existing object will be replaced with data in the object you PUT.
To set a field''s value to null, you may either set its value to null or omit that field from the object you post.
### Security Policies
* This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
'
requestBody:
content:
application/json:
schema:
type: object
example:
id: 56789
companyId: 12345
taxCode: PS081282
taxCodeTypeId: P
description: Yarn
parentTaxCode: PS080100
isPhysical: true
goodsServiceCode: 0
entityUseCode: ''
isActive: true
isSSTCertified: false
parameters:
- name: Content-Type
in: header
schema:
type: string
example: application/json
- name: X-Avalara-Client
in: header
schema:
type: string
description: Identifies the software you are using to call this API. For more information on the client header, see [Client Headers](https://developer.avalara.com/avatax/client-headers/).
example: AvaTax Postman Collection
- name: companyId
in: path
schema:
type: string
required: true
- name: id
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
/api/v2/taxcodes:
get:
tags:
- TaxCodes
summary: Avalara QueryTaxCodes
description: "Get multiple taxcode objects across all companies.\nA 'TaxCode' represents a uniquely identified type of product, good, or service.\nAvalara supports correct tax rates and taxability rules for all TaxCodes in all supported jurisdictions.\nIf you identify your products by tax code in your 'Create Transaction' API calls, Avalara will correctly calculate tax rates and\ntaxability rules for this product in all supported jurisdictions.\n \nSearch 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/) .\nPaginate your results using the `$top`, `$skip`, and `$orderby` parameters.\n\n### Security Policies\n\n* This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ECMAccountUser, ECMCompanyUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.\n"
parameters:
- name: X-Avalara-Client
in: header
schema:
type: string
description: Identifies the software you are using to call this API. For more information on the client header, see [Client Headers](https://developer.avalara.com/avatax/client-headers/).
example: AvaTax Postman Collection
responses:
'200':
description: Successful response
content:
application/json: {}
components:
securitySchemes:
basicAuth:
type: http
scheme: basic