openapi: 3.2.0 info: title: Avalara Contacts API version: '1.0' description: 'Operations tagged Contacts across 2 of this provider''s published API definitions: avalara-shared-company-service-openapi.yml, avatax-apis-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://api.avalara.com/shared/v1 description: Shared Company Service Production - url: http://{{baseurl}} tags: - name: Contacts description: Manage company contacts paths: /companies/{companyId}/contacts: get: operationId: listContacts summary: Avalara List Contacts for a Company tags: - Contacts parameters: - name: companyId in: path required: true schema: type: string responses: '200': description: List of contacts content: application/json: schema: type: array items: $ref: '#/components/schemas/SharedContact' security: - bearerAuth: [] post: operationId: createContact summary: Avalara Create a Contact tags: - Contacts parameters: - name: companyId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SharedContact' responses: '201': description: Contact created security: - bearerAuth: [] servers: - url: https://api.avalara.com/shared/v1 description: Shared Company Service Production /api/v2/companies/{companyId}/contacts: post: tags: - Contacts summary: Avalara CreateContacts description: 'Create one or more new contact objects. A ''contact'' is a person associated with a company who is designated to handle certain responsibilities of a tax collecting and filing entity. ### Security Policies * This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, CompanyAdmin, CSPTester, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.' requestBody: content: application/json: schema: type: object example: id: 56789 companyId: 12345 contactCode: TestContactbdbc28ddc6a64e firstName: Bob lastName: McExample title: Owner line1: 2000 Main Street city: Irvine region: CA postalCode: '92614' country: US email: bob@example.org phone: 714 555-1212 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: {} security: - basicAuth: [] operationId: postApiV2CompaniesByCompanyIdContacts x-operation-id-source: derived get: tags: - Contacts summary: Avalara ListContactsByCompany description: 'List all contact objects assigned to this company. Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on Filtering in REST . Paginate your results using the `$top`, `$skip`, and `$orderby` parameters. ### Security Policies * This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, 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: companyId in: path schema: type: string required: true responses: '200': description: Successful response content: application/json: {} security: - basicAuth: [] operationId: getApiV2CompaniesByCompanyIdContacts x-operation-id-source: derived servers: - url: http://{{baseurl}} /api/v2/companies/{companyId}/contacts/{id}: delete: tags: - Contacts summary: Avalara DeleteContact description: 'Mark the existing contact object at this URL as deleted. ### Security Policies * This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, CompanyAdmin, CSPTester, FirmAdmin, 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: {} security: - basicAuth: [] operationId: deleteApiV2CompaniesByCompanyIdContactsById x-operation-id-source: derived get: tags: - Contacts summary: Avalara GetContact description: 'Get the contact object identified by this URL. A ''contact'' is a person associated with a company who is designated to handle certain responsibilities of a tax collecting and filing entity. ### Security Policies * This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, 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: 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: {} security: - basicAuth: [] operationId: getApiV2CompaniesByCompanyIdContactsById x-operation-id-source: derived put: tags: - Contacts summary: Avalara UpdateContact description: 'Replace the existing contact object at this URL with an updated object. A ''contact'' is a person associated with a company who is designated to handle certain responsibilities of a tax collecting and filing entity. 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, FirmAdmin, SSTAdmin, TechnicalSupportAdmin.' requestBody: content: application/json: schema: type: object example: id: 56789 companyId: 12345 contactCode: TestContactbdbc28ddc6a64e firstName: Bob lastName: McExample title: Owner line1: 2000 Main Street city: Irvine region: CA postalCode: '92614' country: US email: bob@example.org phone: 714 555-1212 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: {} security: - basicAuth: [] operationId: putApiV2CompaniesByCompanyIdContactsById x-operation-id-source: derived servers: - url: http://{{baseurl}} /api/v2/contacts: get: tags: - Contacts summary: Avalara QueryContacts description: 'Get multiple contact objects across all companies. A ''contact'' is a person associated with a company who is designated to handle certain responsibilities of a tax collecting and filing entity. Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on Filtering in REST . Paginate your results using the `$top`, `$skip`, and `$orderby` parameters. ### Security Policies * This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, FirmAdmin, 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: {} security: - basicAuth: [] operationId: getApiV2Contacts x-operation-id-source: derived servers: - url: http://{{baseurl}} components: schemas: SharedContact: type: object properties: contactId: type: string firstName: type: string lastName: type: string email: type: string format: email phone: type: string title: type: string isPrimary: type: boolean securitySchemes: bearerAuth: type: http scheme: bearer basicAuth: type: http scheme: basic externalDocs: description: Shared Company Service API Documentation url: https://developer.avalara.com/api-reference/sharedservice/sharedCompanyService/ x-refined-from: - avalara-shared-company-service-openapi.yml - avatax-apis-openapi.yml