openapi: 3.1.0
info:
title: Avalara 1099 & W-9 1099 Forms FirmClientLinkages API
description: The Avalara 1099 and W-9 API automates collection, validation, and e-filing of IRS forms including 1099 variants (1099-NEC, 1099-MISC, 1099-K, 1099-INT, 1099-DIV), 1095 forms, W-2, and 1042-S. It provides endpoints for creating, updating, managing, and filing various IRS information returns.
version: '1.0'
contact:
name: Avalara Developer Relations
url: https://developer.avalara.com/
email: developer.relations@avalara.com
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
termsOfService: https://legal.avalara.com/#siteterms
servers:
- url: https://api.avalara.com/1099/v1
description: 1099 API Production
- url: https://api.sbx.avalara.com/1099/v1
description: 1099 API Sandbox
security:
- bearerAuth: []
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.\r\n \r\nAvalara allows firms to manage returns for clients without the clients needing to use AvaTax service.\r\nFirms can create accounts of FirmClient for customers they are managing using this API.\r\n \r\nCalling this API creates an account with the specified product subscriptions, but without a new user for account.\r\nAccount is then linked to the Firm so they can managed their returns.\r\nYou should call this API when a customer does not have an AvaTax account and is to be managed only by the firm.\r\n \r\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:
bearerAuth:
type: http
scheme: bearer
description: OAuth 2.0 bearer token
externalDocs:
description: 1099 & W-9 API Documentation
url: https://developer.avalara.com/api-reference/avalara1099/avalara1099/