Avalara Settings API

Manage company settings

Documentation

Specifications

OpenAPI Specification

avalara-settings-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Avalara 1099 & W-9 1099 Forms Settings 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: Settings
  description: Manage company settings
paths:
  /api/v2/companies/{companyId}/settings:
    get:
      operationId: listSettings
      summary: Avalara List Settings for a Company
      tags:
      - Settings
      parameters:
      - $ref: '#/components/parameters/companyId'
      - $ref: '#/components/parameters/filter'
      - $ref: '#/components/parameters/top'
      - $ref: '#/components/parameters/skip'
      responses:
        '200':
          description: List of settings
    post:
      tags:
      - Settings
      summary: Avalara CreateSettings
      description: "Create one or more new setting objects attached to this company.\r\n            \r\nThe company settings system is a metadata system that you can use to store extra information\r\nabout a company.  Your integration or connector could use this data storage to keep track of\r\npreference information, reminders, or any other storage that would need to persist even if\r\nthe customer uninstalls your application.\r\n            \r\nA setting can refer to any type of data you need to remember about this company object.\r\nWhen creating this object, you may define your own `set`, `name`, and `value` parameters.\r\nTo define your own values, please choose a `set` name that begins with `X-` to indicate an extension.\r\n            \r\nUse Set = Transactions, Name = TaxCodePrioritization/HSCodePrioritization and Value = Transaction/ItemMaster for prioritizing which TaxCodes/HsCodes should be used for calculating taxes.\r\n            \r\nExample: To prioritize TaxCodes passed in a Transaction over values stored with Items when calculating tax, use\r\nSet = Transactions, Name = TaxCodePrioritization, Value = Transaction\n\n### Security Policies\n\n* This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, CompanyAdmin, CSPTester, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.\n"
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                id: 56789
                companyId: 12345
                set: ItemsToRemember
                name: Texas
                value: Alamo
      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: {}
  /api/v2/companies/{companyId}/settings/{id}:
    delete:
      tags:
      - Settings
      summary: Avalara DeleteSetting
      description: "Mark the setting object at this URL as deleted.\r\n            \r\nThe company settings system is a metadata system that you can use to store extra information\r\nabout a company.  Your integration or connector could use this data storage to keep track of\r\npreference information, reminders, or any other storage that would need to persist even if\r\nthe customer uninstalls your application.\r\n            \r\nA setting can refer to any type of data you need to remember about this company object.\r\nWhen creating this object, you may define your own `set`, `name`, and `value` parameters.\r\nTo define your own values, please choose a `set` name that begins with `X-` to indicate an extension.\n\n### Security Policies\n\n* This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, CompanyAdmin, CSPTester, FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.\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
      - name: id
        in: path
        schema:
          type: string
        required: true
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
    get:
      tags:
      - Settings
      summary: Avalara GetSetting
      description: "Get a single setting object by its unique ID.\r\n            \r\nThe company settings system is a metadata system that you can use to store extra information\r\nabout a company.  Your integration or connector could use this data storage to keep track of\r\npreference information, reminders, or any other storage that would need to persist even if\r\nthe customer uninstalls your application.\r\n            \r\nA setting can refer to any type of data you need to remember about this company object.\r\nWhen creating this object, you may define your own `set`, `name`, and `value` parameters.\r\nTo define your own values, please choose a `set` name that begins with `X-` to indicate an extension.\n\n### Security Policies\n\n* 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, ProStoresOperator, 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
      - name: id
        in: path
        schema:
          type: string
        required: true
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
    put:
      tags:
      - Settings
      summary: Avalara UpdateSetting
      description: "Replace the existing setting object at this URL with an updated object.\r\n            \r\nThe company settings system is a metadata system that you can use to store extra information\r\nabout a company.  Your integration or connector could use this data storage to keep track of\r\npreference information, reminders, or any other storage that would need to persist even if\r\nthe customer uninstalls your application.\r\n            \r\nA setting can refer to any type of data you need to remember about this company object.\r\nWhen creating this object, you may define your own `set`, `name`, and `value` parameters.\r\nTo define your own values, please choose a `set` name that begins with `X-` to indicate an extension.\r\n            \r\nAll data from the existing object will be replaced with data in the object you `PUT`.\r\n            \r\nTo set a field's value to `null`, you may either set its value to `null` or omit that field from the object when calling update.\n\n### Security Policies\n\n* This API requires one of the following user roles: AccountAdmin, BatchServiceAdmin, CompanyAdmin, CSPTester, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.\n"
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                id: 56789
                companyId: 12345
                set: ItemsToRemember
                name: Texas
                value: Alamo
      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/settings:
    get:
      tags:
      - Settings
      summary: Avalara QuerySettings
      description: "Get multiple setting objects across all companies.\r\n            \r\nThe company settings system is a metadata system that you can use to store extra information\r\nabout a company.  Your integration or connector could use this data storage to keep track of\r\npreference information, reminders, or any other storage that would need to persist even if\r\nthe customer uninstalls your application.\r\n            \r\nA setting can refer to any type of data you need to remember about this company object.\r\nWhen creating this object, you may define your own `set`, `name`, and `value` parameters.\r\nTo define your own values, please choose a `set` name that begins with `X-` to indicate an extension.\r\n            \r\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/) .\r\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, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, ECMAccountUser, ECMCompanyUser, FirmAdmin, FirmUser, ProStoresOperator, 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:
  parameters:
    filter:
      name: $filter
      in: query
      schema:
        type: string
      description: OData filter expression for result filtering
    companyId:
      name: companyId
      in: path
      required: true
      schema:
        type: integer
      description: The numeric ID of the company
    skip:
      name: $skip
      in: query
      schema:
        type: integer
        default: 0
      description: Number of results to skip for pagination
    top:
      name: $top
      in: query
      schema:
        type: integer
        default: 1000
      description: Maximum number of results to return
  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/