openapi: 3.0.0
info:
title: Avalara AvaTax FirmClientLinkages 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: FirmClientLinkages
paths:
/api/v2/firmclientlinkages/{id}/approve:
post:
tags:
- FirmClientLinkages
summary: Avalara ApproveFirmClientLinkage
description: 'This API enables the account admin of a client account to approve linkage request by a firm.
### Security Policies
* This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
'
requestBody:
content:
application/json:
schema:
type: object
example: ''
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: id
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
/api/v2/firmclientlinkages/createandlinkclient:
post:
tags:
- FirmClientLinkages
summary: Avalara CreateAndLinkNewFirmClientAccount
description: "This API is for use by Firms only.\n \nAvalara allows firms to manage returns for clients without the clients needing to use AvaTax service.\nFirms can create accounts of FirmClient for customers they are managing using this API.\n \nCalling this API creates an account with the specified product subscriptions, but without a new user for account.\nAccount is then linked to the Firm so they can managed their returns.\nYou should call this API when a customer does not have an AvaTax account and is to be managed only by the firm.\n \nThe created account will be created in `Active` status but there will be no user or license key associated with account.\n\n### Security Policies\n\n* This API requires one of the following user roles: FirmAdmin, Registrar, SiteAdmin, SystemAdmin.\n"
requestBody:
content:
application/json:
schema:
type: object
example:
accountName: BizTech Company Inc.
firstName: Bob
lastName: Example
email: bob@example.org
companyCode: DEFAULT
companyAddress:
line: 100 Ravine Ln
region: WA
country: US
postalCode: '98010'
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
responses:
'200':
description: Successful response
content:
application/json: {}
/api/v2/firmclientlinkages:
post:
tags:
- FirmClientLinkages
summary: Avalara CreateFirmClientLinkage
description: 'This API enables the firm admins/firm users to request the linkage of a firm account and a client account.
### Security Policies
* This API requires one of the following user roles: BatchServiceAdmin, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
'
requestBody:
content:
application/json:
schema:
type: object
example:
clientAccountId: 24958289
clientAccountName: client account
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
responses:
'200':
description: Successful response
content:
application/json: {}
get:
tags:
- FirmClientLinkages
summary: Avalara ListFirmClientLinkage
description: 'This API enables the firm or account users to request the associated linkages to the account.
### Security Policies
* This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, ECMAccountUser, ECMCompanyUser, FirmAdmin, FirmUser, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
'
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: {}
/api/v2/firmclientlinkages/{id}:
delete:
tags:
- FirmClientLinkages
summary: Avalara DeleteFirmClientLinkage
description: 'This API marks a linkage between a firm and client as deleted.
### Security Policies
* This API requires one of the following user roles: BatchServiceAdmin, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, 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: id
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
get:
tags:
- FirmClientLinkages
summary: Avalara GetFirmClientLinkage
description: 'This API enables the firm admins/firm users to request the linkage of a firm account and a client account.
### Security Policies
* This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, ECMAccountUser, ECMCompanyUser, FirmAdmin, FirmUser, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
'
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: id
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
/api/v2/firmclientlinkages/{id}/reject:
post:
tags:
- FirmClientLinkages
summary: Avalara RejectFirmClientLinkage
description: 'This API enables the account admin of a client account to reject linkage request by a firm.
### Security Policies
* This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
'
requestBody:
content:
application/json:
schema:
type: object
example: ''
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: id
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
/api/v2/firmclientlinkages/{id}/reset:
post:
tags:
- FirmClientLinkages
summary: Avalara ResetFirmClientLinkage
description: 'This API enables the firm admin of a client account to reset a previously created linkage request by a firm.
### Security Policies
* This API requires one of the following user roles: BatchServiceAdmin, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
'
requestBody:
content:
application/json:
schema:
type: object
example: ''
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: id
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
/api/v2/firmclientlinkages/{id}/revoke:
post:
tags:
- FirmClientLinkages
summary: Avalara RevokeFirmClientLinkage
description: 'This API enables the account admin of a client account to revoke a previously approved linkage request by a firm.
### Security Policies
* This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
'
requestBody:
content:
application/json:
schema:
type: object
example: ''
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: id
in: path
schema:
type: string
required: true
responses:
'200':
description: Successful response
content:
application/json: {}
components:
securitySchemes:
basicAuth:
type: http
scheme: basic