swagger: "2.0"
info:
  title: "apex"
  version: 1.3.0
  description: "Salesforce Gateway Apex Client"
  termsOfService: "http://taxnexus.net/terms/"
  contact:
    email: "noc@taxnexus.net"
  license:
    name: "Proprietary - Copyright (c) 2018-2020 by Taxnexus, Inc."
schemes:
  - "http"
basePath: "/v1"
host: "localhost"
securityDefinitions:
  ApiKeyAuth:
    type: apiKey
    in: header
    name: X-API-Key
security:
  - ApiKeyAuth: []
consumes:
  - application/json
produces:
  - application/json
parameters:
  accountIdQuery:
    description: Taxnexus Record Id of an Account
    in: query
    name: accountId
    required: false
    type: string
  accountIdQueryRequired:
    description: Taxnexus Record Id of an Account
    in: query
    name: accountId
    required: true
    type: string
  accountNumberQuery:
    description:
      The Taxnexus Account Number of the Account to be used a record
      retrieval
    in: query
    name: accountNumber
    required: false
    type: string
  accountRequest:
    description: An array of new Account records
    in: body
    name: accountsRequest
    required: true
    schema:
      $ref: "#/definitions/AccountRequest"
  accountTypeQuery:
    description: The Type of this Object
    in: query
    name: type
    required: false
    type: string
  activeQuery:
    description: Retrieve only active records?
    in: query
    name: active
    required: false
    type: boolean
  addressQuery:
    description: Postal Address URL encoded; partial addresses allowed
    in: query
    name: address
    required: false
    type: string
  authorityIdQuery:
    description: Taxnexus Id of the Authority to be retrieved
    in: query
    name: authorityId
    required: false
    type: string
  authorityRequestBody:
    description: A request with an array of Authority Objects
    in: body
    name: authorityRequest
    required: true
    schema:
      $ref: "#/definitions/AuthorityRequest"
  backendIdQuery:
    description: Taxnexus Id of the Backend to be retrieved
    in: query
    name: backendId
    required: false
    type: string
  companyIdQuery:
    description: Taxnexus Id of the Company to be retrieved
    in: query
    name: companyId
    required: false
    type: string
  contactIdQuery:
    description: Taxnexus Record Id of a Contact
    in: query
    name: contactId
    required: false
    type: string
  contactRequest:
    description: An array of new Contact records
    in: body
    name: contactRequest
    required: true
    schema:
      $ref: "#/definitions/ContactRequest"
  countryIdQuery:
    description: The Country Taxnexus ID
    in: query
    name: countryId
    required: false
    type: string
  countryQuery:
    description: The Country abbreviation (2 char)
    in: query
    name: country
    required: false
    type: string
  countyIdQuery:
    description: The ID of this Object
    in: query
    name: id
    required: false
    type: string
  countyQuery:
    description: The County Name
    in: query
    name: county
    required: false
    type: string
  dateFromQuery:
    description: The Starting Date for an object retrieval
    in: query
    name: dateFrom
    required: false
    type: string
  dateToQuery:
    description: The Ending Date for an object retrieval
    in: query
    name: dateTo
    required: false
    type: string
  domainIdQuery:
    description: Taxnexus Id of the Domain to be retrieved
    in: query
    name: domainId
    required: false
    type: string
  domainQuery:
    description: "The Tax Domain to rate (cannabis, sales or telecom)"
    in: query
    name: domain
    required: false
    type: string
  filingIdQuery:
    description: Taxnexus Id of the Filing to be retrieved
    in: query
    name: filingId
    required: false
    type: string
  filingRequest:
    description: A request with an array of Filing Objects
    in: body
    name: filingRequest
    required: true
    schema:
      $ref: "#/definitions/FilingRequest"
  filingTypeIdQuery:
    description: Taxnexus Record Id of a Filing
    in: query
    name: filingTypeId
    required: false
    type: string
  filingTypeRequest:
    description: A request with an array of FilingType Objects
    in: body
    name: FilingTypeRequest
    required: true
    schema:
      $ref: "#/definitions/FilingTypeRequest"
  ingestIdQuery:
    description: Taxnexus Record Id of an Ingest
    in: query
    name: ingestId
    required: false
    type: string
  ingestRequest:
    description: An array of new Ingest records
    in: body
    name: ingestRequest
    required: true
    schema:
      $ref: "#/definitions/IngestRequest"
  jobIdQuery:
    description: Taxnexus Record Id of a Job record
    in: query
    name: jobId
    required: false
    type: string
  jobRequest:
    description: An array of new Job records
    in: body
    name: JobtRequest
    required: true
    schema:
      $ref: "#/definitions/JobRequest"
  limitQuery:
    default: 100
    description: "How many objects to return at one time"
    format: int64
    in: query
    name: limit
    required: false
    type: integer
  nameQuery:
    description: The Name of this Object
    in: query
    name: name
    required: false
    type: string
  licenseIdQuery:
    description: Taxnexus Id of the License to be retrieved
    in: query
    name: licenseId
    required: false
    type: string
  licenseTypeIdQuery:
    description: Taxnexus Id of the License Type to be retrieved
    in: query
    name: licensetypeId
    required: false
    type: string
  offsetQuery:
    default: 0
    description: How many objects to skip? (default 0)
    format: int64
    in: query
    name: offset
    required: false
    type: integer
  periodIdQuery:
    description: Taxnexus Record Id of a Period
    in: query
    name: periodId
    required: false
    type: string
  placeIdQuery:
    description: The City name (must be accompanied by State)
    in: query
    name: placeId
    required: false
    type: string
  placeQuery:
    description: The City name (must be accompanied by State)
    in: query
    name: place
    required: false
    type: string
  stateIdQuery:
    description: The State or Province abbreviation (2 char)
    in: query
    name: stateId
    required: false
    type: string
  stateQuery:
    description: The State or Province abbreviation (2 char)
    in: query
    name: state
    required: false
    type: string
  taxTypeAccountIdQuery:
    description: Taxnexus Id of the Tax Type Account to be retrieved
    in: query
    name: taxtypeaccountId
    required: false
    type: string
  taxTypeIdQuery:
    description: Taxnexus Id of the Tax Type to be retrieved
    in: query
    name: taxtypeId
    required: false
    type: string
  submissionIdQuery:
    description: Taxnexus Id of the Submisssion to be retrieved
    in: query
    name: submissionId
    required: false
    type: string
  submissionRequestBody:
    description: An array of new Submission records
    in: body
    name: submisssionsRequest
    required: true
    schema:
      $ref: "#/definitions/SubmissionRequest"
  taxnexuscodeIdQuery:
    description: Taxnexus Id of the Taxnexus Code to be retrieved
    in: query
    name: taxnexuscodeId
    required: false
    type: string
  templateIdQuery:
    description: Taxnexus Id of the Template to be retrieved
    in: query
    name: templateId
    required: false
    type: string
  typeQuery:
    description: The Type of this Object
    in: query
    name: type
    required: false
    type: string
  notebookIdQuery:
    description: Template ID
    in: query
    name: notebookId
    type: string
  notebookRequest:
    description: An array of Notebook records
    in: body
    name: NotebookRequest
    required: true
    schema:
      $ref: "#/definitions/NotebookRequest"
responses:
  AccessForbidden:
    description: "Access forbidden, account lacks access"
    schema:
      $ref: "#/definitions/Error"
  AccountResponse:
    description: Taxnexus Response with Account objects
    schema:
      $ref: "#/definitions/AccountResponse"
  AccountingRuleResponse:
    description: Taxnexus Response with Accounting Rule objects
    schema:
      $ref: "#/definitions/AccountingRuleResponse"
  AccountingRulesetResponse:
    description: Taxnexus Response with Accounting Ruleset objects
    schema:
      $ref: "#/definitions/AccountingRulesetResponse"
  AuthorityResponse:
    description: An array of Authority objects
    schema:
      $ref: "#/definitions/AuthorityResponse"
  BackendResponse:
    description: Taxnexus Response with an array of Backend Objects
    schema:
      $ref: "#/definitions/BackendResponse"
  CompanyResponse:
    description: Taxnexus Response with Company objects
    schema:
      $ref: "#/definitions/CompanyResponse"
  Conflict:
    description: Conflict
    schema:
      $ref: "#/definitions/Error"
  ContactResponse:
    description: Taxnexus Response with Contact objects
    schema:
      $ref: "#/definitions/ContactResponse"
  CountryResponse:
    description: Taxnexus Response with an array of Country objects
    schema:
      $ref: "#/definitions/CountryResponse"
  CountyResponse:
    description: Taxnexus Response with an array of County objects
    schema:
      $ref: "#/definitions/CountyResponse"
  DomainResponse:
    description: Taxnexus Response with an array of Domain objects
    schema:
      $ref: "#/definitions/DomainResponse"
  FilingResponse:
    description: Taxnexus Response with an array of Filing objects
    schema:
      $ref: "#/definitions/FilingResponse"
  FilingTypeResponse:
    description: Taxnexus Response with an array of FilingType objects
    schema:
      $ref: "#/definitions/FilingTypeResponse"
  GlAccountResponse:
    description: An array of GL Account Objects
    schema:
      $ref: "#/definitions/GlAccountResponse"
  GlBalanceResponse:
    description: An array of GL Balance Objects
    schema:
      $ref: "#/definitions/GlBalanceResponse"
  IngestResponse:
    description: Taxnexus Response with Ingest objects
    schema:
      $ref: "#/definitions/IngestResponse"
  InvalidDataError:
    description: Invalid data was sent
    schema:
      $ref: "#/definitions/InvalidError"
  JobResponse:
    description: Taxnexus Response with Job objects
    schema:
      $ref: "#/definitions/JobResponse"
  NotFound:
    description: Resource was not found
    schema:
      $ref: "#/definitions/Error"
  PeriodResponse:
    description: Taxnexus Response with Job objects
    schema:
      $ref: "#/definitions/PeriodResponse"
  PlaceResponse:
    description: Taxnexus Response with an array of Place objects
    schema:
      $ref: "#/definitions/PlaceResponse"
  ServerError:
    description: Server Internal Error
    schema:
      $ref: "#/definitions/Error"
  StateResponse:
    description: Taxnexus Response with an array of State objects
    schema:
      $ref: "#/definitions/StateResponse"
  TaxTypeResponse:
    description: Taxnexus Response with an array of Tax Type objects
    schema:
      $ref: "#/definitions/TaxTypeResponse"
  TaxTypeAccountResponse:
    description: An array of TaxTypeAccount objects
    schema:
      $ref: "#/definitions/TaxTypeAccountResponse"
  SubmissionResponse:
    description: Taxnexus Response with Submission objects
    schema:
      $ref: "#/definitions/SubmissionResponse"
  TaxnexusCodeResponse:
    description:
      Taxnexus Response with an array of Taxnexus Code objects
    schema:
      $ref: "#/definitions/TaxnexusCodeResponse"
  TemplateResponse:
    description: Taxnexus Response with an array of Template objects
    schema:
      $ref: "#/definitions/TemplateResponse"
  Unauthorized:
    description: "Access unauthorized, invalid API-KEY was used"
    schema:
      $ref: "#/definitions/Error"
  UnprocessableEntity:
    description: "Unprocessable Entity, likely a bad parameter"
    schema:
      $ref: "#/definitions/Error"
  NotebookResponse:
    description: Taxnexus Response with Notebook objects
    schema:
      $ref: "#/definitions/NotebookResponse"
  LicenseResponse:
    description: An array of License Objects
    schema:
      $ref: "#/definitions/LicenseResponse"
  LicenseTypeResponse:
    description: An array of License Type Objects
    schema:
      $ref: "#/definitions/LicenseTypeResponse"
paths:
  /accountingrules:
    get:
      description: Return a list of Periods for an Account
      operationId: getAccountingRules
      parameters:
        - $ref: "#/parameters/accountIdQuery"
      responses:
        "200":
          $ref: "#/responses/AccountingRulesetResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Accounting Rulesets
      tags:
        - AccountingRules
  /accountingrulesets:
    get:
      description: Return a list of Periods for an Account
      operationId: getAccountingRulesets
      parameters:
        - $ref: "#/parameters/accountIdQuery"
      responses:
        "200":
          $ref: "#/responses/AccountingRulesetResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Accounting Rulesets
      tags:
        - AccountingRulesets
  /accounts:
    get:
      description: Return a list of all available Accounts
      operationId: getAccounts
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/activeQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/accountNumberQuery"
        - $ref: "#/parameters/nameQuery"
        - $ref: "#/parameters/accountTypeQuery"
      responses:
        "200":
          $ref: "#/responses/AccountResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of accounts
      tags:
        - Accounts
    post:
      description: Account record to be added
      operationId: postAccounts
      parameters:
        - $ref: "#/parameters/accountRequest"
      responses:
        "200":
          $ref: "#/responses/AccountResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Add a new account to Taxnexus
      tags:
        - Accounts
    put:
      description: Update a single account specified by accountId
      operationId: putAccount
      parameters:
        - $ref: "#/parameters/accountRequest"
      responses:
        "200":
          $ref: "#/responses/AccountResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Update a single account
      tags:
        - Accounts
  /authorities:
    get:
      description: Return a list of available Authorities
      operationId: getAuthorities
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/companyIdQuery"
        - $ref: "#/parameters/authorityIdQuery"
        - $ref: "#/parameters/activeQuery"
      responses:
        "200":
          $ref: "#/responses/AuthorityResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Authorities
      tags:
        - Authorities
  /backends:
    get:
      description: Return a list of Backends
      operationId: getBackends
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/accountNumberQuery"
        - $ref: "#/parameters/companyIdQuery"
        - $ref: "#/parameters/backendIdQuery"
        - $ref: "#/parameters/nameQuery"
      responses:
        "200":
          $ref: "#/responses/BackendResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Backends
      tags:
        - Backends
  /companies:
    get:
      description: Retrieve a Company record from the datastore
      operationId: getCompanies
      parameters:
        - $ref: "#/parameters/companyIdQuery"
      responses:
        "200":
          $ref: "#/responses/CompanyResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a Company record
      tags:
        - Companies
  /contacts:
    get:
      description: Retrieve Contact records from the datastore
      operationId: getContacts
      parameters:
        - $ref: "#/parameters/contactIdQuery"
      responses:
        "200":
          $ref: "#/responses/ContactResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a Contact record
      tags:
        - Contacts
    post:
      description: Contacts record to be added
      operationId: postContacts
      parameters:
        - $ref: "#/parameters/contactRequest"
      responses:
        "200":
          $ref: "#/responses/ContactResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Add a new Contacts to Taxnexus
      tags:
        - Contacts
  /counties:
    get:
      description: "Retrieve Counties, filter with parameters"
      operationId: getCounties
      parameters:
        - $ref: "#/parameters/stateQuery"
        - $ref: "#/parameters/countyQuery"
        - $ref: "#/parameters/countyIdQuery"
      responses:
        "200":
          $ref: "#/responses/CountyResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Retrieve Counties
      tags:
        - Counties
  /countries:
    get:
      description: "Retrieve Countries, filter with parameters"
      operationId: getCountries
      parameters:
        - $ref: "#/parameters/countryIdQuery"
      responses:
        "200":
          $ref: "#/responses/CountryResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Retrieve Countries
      tags:
        - Countries
  /domains:
    get:
      operationId: getDomains
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/domainQuery"
        - $ref: "#/parameters/domainIdQuery"
        - $ref: "#/parameters/activeQuery"
      responses:
        "200":
          $ref: "#/responses/DomainResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get Domain records
      tags:
        - Domains
  /filings:
    get:
      description: Return a list of available Regulatory Filings
      operationId: getFilings
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/domainQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/companyIdQuery"
        - $ref: "#/parameters/filingIdQuery"
        - $ref: "#/parameters/activeQuery"
      responses:
        "200":
          $ref: "#/responses/FilingResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Filings
      tags:
        - Filings
    post:
      description: Create new Filings
      operationId: postFilings
      parameters:
        - $ref: "#/parameters/filingRequest"
      responses:
        "200":
          $ref: "#/responses/FilingResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Create new Filings
      tags:
        - Filings
    put:
      description:
        Update all the fields in a Filing record identified by Taxnexus
        ID
      operationId: putFilings
      parameters:
        - $ref: "#/parameters/filingRequest"
      responses:
        "200":
          $ref: "#/responses/FilingResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Update a Filing
      tags:
        - Filings
  /filingtypes:
    get:
      description: Return a list of available Regulatory FilingTypes
      operationId: getFilingTypes
      parameters:
        - $ref: "#/parameters/filingTypeIdQuery"
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
      responses:
        "200":
          $ref: "#/responses/FilingTypeResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of FilingTypes
      tags:
        - FilingTypes
    post:
      description: Create new FilingTypes
      operationId: postFilingTypes
      parameters:
        - $ref: "#/parameters/filingTypeRequest"
      responses:
        "200":
          $ref: "#/responses/FilingTypeResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Create new FilingTypes
      tags:
        - FilingTypes
    put:
      description:
        Update all the fields in a FilingType record identified by
        Taxnexus ID
      operationId: putFilingTypes
      parameters:
        - $ref: "#/parameters/filingTypeRequest"
      responses:
        "200":
          $ref: "#/responses/FilingTypeResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Update a FilingType
      tags:
        - FilingTypes
  /glaccounts:
    get:
      description: Return a list of available General Ledger Accounts
      operationId: getGlAccounts
      parameters:
        - $ref: "#/parameters/accountIdQueryRequired"
      responses:
        "200":
          $ref: "#/responses/GlAccountResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of General Ledger Accounts
      tags:
        - GlAccounts
  /glbalances:
    get:
      description:
        Return a list of General Ledger Account Balances for a Taxnexus
        Account
      operationId: getGlBalances
      parameters:
        - $ref: "#/parameters/accountIdQueryRequired"
      responses:
        "200":
          $ref: "#/responses/GlBalanceResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of General Ledger Account Balances
      tags:
        - GlBalances
  /ingests:
    get:
      description: Return a list of Ingest records
      operationId: getIngests
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/ingestIdQuery"
      responses:
        "200":
          $ref: "#/responses/IngestResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list Ingests
      tags:
        - Ingests
    post:
      description: Create a new Ingest
      operationId: postIngests
      parameters:
        - $ref: "#/parameters/ingestRequest"
      responses:
        "200":
          $ref: "#/responses/IngestResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Create new Ingests
      tags:
        - Ingests
    put:
      description: Update Ingests
      operationId: putIngests
      parameters:
        - $ref: "#/parameters/ingestRequest"
      responses:
        "200":
          $ref: "#/responses/IngestResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Update Ingests
      tags:
        - Ingests
  /jobs:
    get:
      description: Return a list of Job records from the datastore
      operationId: getJobs
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/accountNumberQuery"
        - $ref: "#/parameters/companyIdQuery"
        - $ref: "#/parameters/jobIdQuery"
      responses:
        "200":
          $ref: "#/responses/JobResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list Jobs
      tags:
        - Jobs
    post:
      description: Create and enqueue Jobs in Taxnexus
      operationId: postJobs
      parameters:
        - $ref: "#/parameters/jobRequest"
      responses:
        "200":
          $ref: "#/responses/JobResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Create new Jobs
      tags:
        - Jobs
    put:
      description: Update Jobs in Taxnexus
      operationId: putJobs
      parameters:
        - $ref: "#/parameters/jobRequest"
      responses:
        "200":
          $ref: "#/responses/JobResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Update Jobs
      tags:
        - Jobs
  /licenses:
    get:
      description: "Retrieve all licenses, filter with parameters"
      operationId: getLicenses
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/companyIdQuery"
        - $ref: "#/parameters/licenseIdQuery"
        - $ref: "#/parameters/activeQuery"
      responses:
        "200":
          $ref: "#/responses/LicenseResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Retrieve licenses
      tags:
        - Licenses
    post:
      description: Create new Licenses
      operationId: postLicenses
      parameters:
        - description: The new licenses
          in: body
          name: licenseRequest
          schema:
            $ref: "#/definitions/LicenseRequest"
      responses:
        "200":
          $ref: "#/responses/LicenseResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Create new Licenses
      tags:
        - Licenses
    put:
      description: Add or update licenses
      operationId: putLicenses
      parameters:
        - description: The updated licenses
          in: body
          name: licenseRequest
          schema:
            $ref: "#/definitions/LicenseRequest"
      responses:
        "200":
          $ref: "#/responses/LicenseResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Upsert a License
      tags:
        - Licenses
  /licensetypes:
    get:
      description: Retrieve LicenseType records
      operationId: getLicenseTypes
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/companyIdQuery"
        - $ref: "#/parameters/licenseTypeIdQuery"
        - $ref: "#/parameters/activeQuery"
      responses:
        "200":
          $ref: "#/responses/LicenseTypeResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Retrieve LicenseType records
      tags:
        - LicenseTypes
  /periods:
    get:
      description: Return a list of Periods for an Account
      operationId: getPeriods
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/periodIdQuery"
      responses:
        "200":
          $ref: "#/responses/PeriodResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Periods
      tags:
        - Periods
  /places:
    get:
      description: "Retrieve Places, filter with parameters"
      operationId: getPlaces
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/stateQuery"
        - $ref: "#/parameters/placeIdQuery"
      responses:
        "200":
          $ref: "#/responses/PlaceResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Retrieve Places
      tags:
        - Places
  /states:
    get:
      description: "Retrieve States, filter with parameters"
      operationId: getStates
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/countryQuery"
        - $ref: "#/parameters/stateIdQuery"
      responses:
        "200":
          $ref: "#/responses/StateResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Retrieve States
      tags:
        - States
  /submissions:
    get:
      description: Return a list of available Submissions
      operationId: getSubmissions
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/companyIdQuery"
        - $ref: "#/parameters/submissionIdQuery"
        - $ref: "#/parameters/activeQuery"
      responses:
        "200":
          $ref: "#/responses/SubmissionResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Submissions
      tags:
        - Submissions
    post:
      description: Create new Sumissions
      operationId: postSubmissions
      parameters:
        - $ref: "#/parameters/submissionRequestBody"
      responses:
        "200":
          $ref: "#/responses/SubmissionResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Add new Submissions
      tags:
        - Submissions
    put:
      description:
        Update all the fields in a Submission record identified by
        Taxnexus Id
      operationId: putSubmissions
      parameters:
        - $ref: "#/parameters/submissionRequestBody"
      responses:
        "200":
          $ref: "#/responses/SubmissionResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Update a Submission
      tags:
        - Submissions
  /taxnexuscodes:
    get:
      description: Return a list of TaxnexusCodes
      operationId: getTaxnexusCodes
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/taxnexuscodeIdQuery"
      responses:
        "200":
          $ref: "#/responses/TaxnexusCodeResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of TaxnexusCodes
      tags:
        - TaxnexusCodes
  /taxtypeaccounts:
    get:
      description: Return a list of Tax Type Accounts
      operationId: getTaxTypeAccounts
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/accountIdQuery"
        - $ref: "#/parameters/placeQuery"
        - $ref: "#/parameters/stateQuery"
        - $ref: "#/parameters/countyQuery"
        - $ref: "#/parameters/countryQuery"
        - $ref: "#/parameters/activeQuery"
        - $ref: "#/parameters/taxTypeAccountIdQuery"
      responses:
        "200":
          $ref: "#/responses/TaxTypeAccountResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Tax Type Accounts
      tags:
        - TaxTypeAccounts
    post:
      description: Create a new Tax Type Account
      operationId: postTaxTypeAccounts
      parameters:
        - description: The new Tax Type Account
          in: body
          name: taxtypeaccount
          schema:
            $ref: "#/definitions/TaxTypeAccountRequest"
      responses:
        "200":
          $ref: "#/responses/TaxTypeAccountResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Create new Tax Type Accounts
      tags:
        - TaxTypeAccounts
    put:
      description: Update a TaxTypeAccount
      operationId: putTaxTypeAccounts
      parameters:
        - in: body
          name: taxtypeaccount
          schema:
            $ref: "#/definitions/TaxTypeAccountRequest"
      responses:
        "200":
          $ref: "#/responses/TaxTypeAccountResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "500":
          $ref: "#/responses/ServerError"
      summary: Update TaxTypeAccounts
      tags:
        - TaxTypeAccounts
  /taxtypes:
    get:
      operationId: getTaxTypes
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/addressQuery"
        - $ref: "#/parameters/placeQuery"
        - $ref: "#/parameters/stateQuery"
        - $ref: "#/parameters/countyQuery"
        - $ref: "#/parameters/countryQuery"
        - $ref: "#/parameters/activeQuery"
        - $ref: "#/parameters/taxTypeIdQuery"
      responses:
        "200":
          $ref: "#/responses/TaxTypeResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Tax Types
      tags:
        - TaxTypes
  /templates:
    get:
      description: "Retrieve Templates, filter with parameters"
      operationId: getTemplates
      parameters:
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
        - $ref: "#/parameters/templateIdQuery"
      responses:
        "200":
          $ref: "#/responses/TemplateResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Retrieve Templates
      tags:
        - Templates
  /notebooks:
    get:
      description: Return a list of Notebook records from the datastore
      operationId: getNotebooks
      parameters:
        - $ref: "#/parameters/notebookIdQuery"
        - $ref: "#/parameters/limitQuery"
        - $ref: "#/parameters/offsetQuery"
      responses:
        "200":
          $ref: "#/responses/NotebookResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Get a list of Notebooks
      tags:
        - Notebooks
    post:
      description: Create Notebooks in Taxnexus
      operationId: postNotebooks
      parameters:
        - $ref: "#/parameters/notebookRequest"
      responses:
        "200":
          $ref: "#/responses/NotebookResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Create new Notebooks
      tags:
        - Notebooks
    put:
      description: Update Notebooks in Taxnexus
      operationId: putNotebooks
      parameters:
        - $ref: "#/parameters/notebookRequest"
      responses:
        "200":
          $ref: "#/responses/NotebookResponse"
        "401":
          $ref: "#/responses/Unauthorized"
        "403":
          $ref: "#/responses/AccessForbidden"
        "404":
          $ref: "#/responses/NotFound"
        "422":
          $ref: "#/responses/UnprocessableEntity"
        "500":
          $ref: "#/responses/ServerError"
      summary: Update Notebooks
      tags:
        - Notebooks
definitions:
  Account:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountnumber:
        type: string
      accountsource:
        type: string
      active:
        type: string
      activecustomer:
        type: boolean
      administrativelevel:
        type: string
      amount:
        format: double
        type: number
      amountinvoiced:
        format: double
        type: number
      amountpaid:
        format: double
        type: number
      annualrevenue:
        format: double
        type: number
      balance:
        format: double
        type: number
      billingaddress:
        $ref: "#/definitions/Address"
      billingcontactid:
        type: string
      billingpreference:
        description: Billing Preference
        type: string
      businessaddress:
        $ref: "#/definitions/Address"
      cannabiscustomer:
        type: boolean
      channelprogramlevelname:
        type: string
      channelprogramname:
        type: string
      clientenddate:
        type: string
      clientstartdate:
        type: string
      companyid:
        type: string
      coordinateid:
        description: The Id of the geo coordinates of this account
        type: string
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      customerid:
        description: Customer ID from source system
        type: string
      customerpriority:
        description: Customer Priority
        type: string
      dandbcompanyid:
        description: D-n-B Company
        type: string
      dba:
        description: This Account's 'Doing Business As' name
        type: string
      defaultaddress:
        $ref: "#/definitions/Address"
      defaultbackendid:
        description: Default Backend ID
        type: string
      defaultdeliverycontactid:
        description: Default Delivery Address Contact ID
        type: string
      defaultenduserid:
        type: string
      description:
        description: Description
        type: string
      dunsnumber:
        description: D-U-N-S Number
        type: string
      ein:
        type: string
      email:
        description: Main Account Email
        type: string
      enrollmentstatus:
        description: Enrollment Status
        type: string
      fax:
        description: Fax
        type: string
      id:
        description: Taxnexus Account Id
        type: string
      industry:
        description: Industry
        type: string
      iscustomerportal:
        description: Customer Portal Account
        type: boolean
      ispartner:
        description: Partner Account
        type: boolean
      ispcustomer:
        type: boolean
      jigsaw:
        description: Data.com Key
        type: string
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      mspcustomer:
        description: MSP Customer?
        type: boolean
      naicscode:
        description: NAICS Code
        type: string
      naicsdesc:
        description: NAICS Description
        type: string
      name:
        description: Account Name
        type: string
      numberofemployees:
        format: int64
        type: number
      numberoflocations:
        format: int64
        type: number
      opencharges:
        format: double
        type: number
      ordercontactid:
        type: string
      orderemail:
        type: string
      ownerid:
        type: string
      ownership:
        description: Ownership
        type: string
      parentfk:
        description: Parent Foreign Key
        type: string
      parentid:
        type: string
      phone:
        description: Phone
        type: string
      placeid:
        description:
          The ID of the Place situs record that applies to this Account
        type: string
      preparerid:
        type: string
      rating:
        description: Rating
        type: string
      ratingengineid:
        description: Rating Engine identifier
        type: string
      ref:
        type: string
      revenuebase:
        format: double
        type: number
      revenuenet:
        format: double
        type: number
      revenuenottaxable:
        format: double
        type: number
      shippingaddress:
        $ref: "#/definitions/Address"
      shippingcensustract:
        description: Shipping Census Tract
        type: string
      shippingcontactid:
        type: string
      shippingcounty:
        description: Shipping County
        type: string
      sic:
        type: string
      sicdesc:
        type: string
      site:
        description: Account Site
        type: string
      status:
        description: Account Status
        type: string
      taxexemption:
        type: string
      taxontax:
        format: double
        type: number
      telecomcustomer:
        type: boolean
      tickersymbol:
        description: Ticker Symbol
        type: string
      tradestyle:
        description: Tradestyle
        type: string
      type:
        type: string
      unappliedpayments:
        format: double
        type: number
      unitbase:
        format: double
        type: number
      upsellopportunity:
        type: string
      uuid:
        type: string
      website:
        type: string
      whmcsclientid:
        format: int64
        type: number
      xerocontactid:
        description: Xero Contact ID
        type: string
      yearstarted:
        description: Year Started
        type: string
    type: object
  AccountRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/Account"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  AccountResponse:
    description: An array of Account objects
    properties:
      data:
        items:
          $ref: "#/definitions/Account"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  AccountingRule:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        description: The Account for whom this Account Rule exists
        type: string
      code:
        description: The Code used for Accounting Rule Lookups
        type: string
      cogsaccountid:
        description:
          The Cost of Goods Sold account to be used for this Accounting
          Rule
        type: string
      cogsaccountname:
        description: COGS Account Name
        type: string
      createdbyid:
        description: Created By
        type: string
      createddate:
        description: Created Date
        type: string
      creditaccountid:
        description:
          The GL Account that is the Credit Account to be used in this
          Accounting Rule
        type: string
      creditaccountname:
        description: Credit Account Name
        type: string
      debitaccountid:
        description:
          The GL Account that is the Debit Account to be used in this
          Accounting Rule
        type: string
      debitaccountname:
        description: Debit Account Name
        type: string
      description:
        description: Description
        type: string
      id:
        description: Taxnexus Record Id
        type: string
      inventoryaccountid:
        description:
          The GL Account that is the Inventory Account to be used in
          this Accounting Rule
        type: string
      inventoryaccountname:
        description: Inventory Account Name
        type: string
      isdeferred:
        description:
          "Is this a deferred tax, not to be charged on the invoice?"
        type: boolean
      lastmodifiedbyid:
        description: Last Modified By
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      parentfk:
        description: Parent Foreign Key
        type: string
      proportion:
        description:
          The Proportion of Revenue which is governed by this Accounting
          Rule; used for proportional taxing of products and services
        type: number
  AccountingRuleRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/AccountingRule"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  AccountingRuleResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/AccountingRule"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  AccountingRuleset:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        description: Taxnexus Account ID
        type: string
      code:
        description: Accounting Ruleset Code
        type: string
      createdbyid:
        description: Created By
        type: string
      createddate:
        description: Created Date
        type: string
      description:
        description: Ruleset Description
        type: string
      id:
        description: Taxnexus Record Id
        type: string
      items:
        items:
          $ref: "#/definitions/AccountingRulesetItem"
        type: array
      lastmodifiedbyid:
        description: Last Modified By
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
    type: object
  AccountingRulesetItem:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountingrulecode:
        type: string
      accountingruleid:
        type: string
      accountingrulesetid:
        type: string
      id:
        type: string
    type: object
  AccountingRulesetRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/AccountingRuleset"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  AccountingRulesetResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/AccountingRuleset"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Address:
    properties:
      city:
        description: City
        type: string
      country:
        description: Country full name
        type: string
      countrycode:
        description: Country Code
        type: string
      postalcode:
        description: Postal Code
        type: string
      state:
        description: State full name
        type: string
      statecode:
        description: State Code
        type: string
      street:
        description: Street number and name
        type: string
    type: object
  Authority:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        description: Account
        type: string
      addressline1:
        description: Address Line 1
        type: string
      addressline2:
        description: Address Line 2
        type: string
      authoritydate:
        type: string
      btn:
        description: Billing Telephone Number
        type: string
      city:
        description: City
        type: string
      contactid:
        description: Contact ID
        type: string
      country:
        type: string
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      dateapproved:
        description: Date Approved
        type: string
      id:
        description: Taxnexus Record Identifier
        type: string
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      losingcarrier:
        description: Losing Carrier
        type: string
      name:
        description: Authority Number
        type: string
      nameline1:
        description: Name Line 1
        type: string
      nameline2:
        description: Name Line 2
        type: string
      opportunityid:
        description: Opportunity ID
        type: string
      orderid:
        description: Order ID
        type: string
      parentfk:
        description:
          UUID Reference the master record that owns this item
        type: string
      postalcode:
        description: Zip Code
        type: string
      quoteid:
        description: Quote ID
        type: string
      ref:
        description: "Source System identifier for this record, if any"
        type: string
      state:
        description: State
        type: string
      status:
        description: Status
        type: string
      transferdate:
        description: Transfer Date
        type: string
      type:
        description: Authority Type
        type: string
    type: object
  AuthorityRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/Authority"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  AuthorityResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/Authority"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Backend:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        type: string
      active:
        type: boolean
      apikey:
        type: string
      applicationname:
        type: string
      authtype:
        type: string
      backendname:
        type: string
      baseurl:
        type: string
      callbackurl:
        type: string
      clientid:
        type: string
      clientsecret:
        type: string
      companyid:
        type: string
      createdbyid:
        type: string
        description: Created By
      createddate:
        type: string
        description: Created Date
      description:
        description: Description
        type: string
      id:
        description: Taxnexus Record Id Only; not used in POST
        type: string
      lastmodifiedbyid:
        type: string
        description: Last Modified By
      lastmodifieddate:
        type: string
        description: Last Modified Date
      loginurl:
        type: string
      managementpassword:
        type: string
      managementurl:
        type: string
      managementusername:
        type: string
      metrcstate:
        type: string
      metrclicense:
        type: string
      ownerid:
        type: string
      password:
        type: string
      production:
        type: boolean
      projectid:
        type: string
      providercredentials:
        type: string
      realm:
        type: string
      ref:
        type: string
      resellerbackend:
        type: string
      resellerbackendid:
        type: string
      securitytoken:
        type: string
      timeout:
        format: int64
        type: number
      tokenuri:
        type: string
      type:
        type: string
      username:
        type: string
      vendor:
        type: string
    type: object
  BackendResponse:
    description: An array of Backend Objects
    properties:
      data:
        items:
          $ref: "#/definitions/Backend"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Company:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        type: string
      accountnumberprefix:
        type: string
      advanceperiodid:
        type: string
      billingaddress:
        $ref: "#/definitions/Address"
      billingadvice:
        type: string
      billingcontactid:
        type: string
      billingemail:
        type: string
      billingphone:
        type: string
      billingwebsite:
        type: string
      closedperiodid:
        type: string
      coatemplateid:
        type: string
      coloraccent1:
        type: string
      coloraccent2:
        type: string
      colorprimary:
        type: string
      createdbyid:
        type: string
      createddate:
        type: string
      currentperiodid:
        type: string
      currentperiodstatus:
        type: string
      customersuccessid:
        type: string
      dateclosed:
        type: string
      defaultaddress:
        $ref: "#/definitions/Address"
      defaultcompany:
        type: boolean
      fontbody:
        type: string
      fontheading:
        type: string
      fontheadingnarrow:
        type: string
      fontlink:
        type: string
      fontmono:
        type: string
      id:
        type: string
      international:
        type: boolean
      lastaccountnumber:
        format: int64
        type: number
      lastmodifiedbyid:
        type: string
      lastmodifieddate:
        type: string
      lasttaxtypenumber:
        format: int64
        type: number
      logo:
        type: string
      name:
        type: string
      ownerid:
        type: string
      preparerid:
        type: string
      pricebookid:
        type: string
      usertechleadid:
        type: string
    type: object
  CompanyResponse:
    description: An array of Company objects
    properties:
      data:
        items:
          $ref: "#/definitions/Company"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Contact:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        description: The primary account ID of this contact
        type: string
      assistantname:
        description: Assistant Name
        type: string
      assistantphone:
        description: Asst. Phone
        type: string
      birthdate:
        description: Birthdate
        type: string
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      department:
        description: Department
        type: string
      description:
        description: Description
        type: string
      donotcall:
        description: Do Not Call?
        type: boolean
      email:
        description: Email address
        type: string
      emailbounceddate:
        description: Email Bounce Date
        type: string
      emailbouncedreason:
        description: Email Bounce Reason
        type: string
      enrollmentstatus:
        description: Taxnexus Enrollment Status
        type: string
      fax:
        description: Fax Number
        type: string
      firstname:
        description: First Name
        type: string
      hasoptedoutofemail:
        description: Email Opt Out
        type: boolean
      hasoptedoutoffax:
        description: Fax Opt Out
        type: boolean
      homephone:
        description: Home Phone
        type: string
      id:
        description: Taxnexus Record Id
        type: string
      isemailbounced:
        description: Does this contact have bounced emails?
        type: boolean
      isprovisioned:
        description: Is Provisioned?
        type: boolean
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      lastname:
        description: Last Name
        type: string
      leadsource:
        description: Lead Source
        type: string
      level:
        description: Level
        type: string
      linkedin:
        description: LinkedIn Page
        type: string
      mailingaddress:
        $ref: "#/definitions/Address"
      mailinglists:
        description: Mailing Lists
        type: string
      mobilephone:
        description: Mobile Phone
        type: string
      name:
        description: Full Name
        type: string
      otheraddress:
        $ref: "#/definitions/Address"
      otherphone:
        description: Other Phone
        type: string
      ownerid:
        description: The User ID of the user who owns this Contact
        type: string
      personalemail:
        description: Personal Email Address for this Contact
        type: string
      phone:
        description: Phone Number
        type: string
      photourl:
        description: URL of a photograph of this User
        type: string
      recruitingstatus:
        description: Recruiting Status
        type: string
      ref:
        description: "External reference to this contact, if any"
        type: string
      reportstoid:
        description: Reports To Contact ID
        type: string
      salutation:
        description: Contact Salutation
        type: string
      status:
        description: The Contact Status
        type: string
      title:
        description: Contact Title
        type: string
      type:
        description: Contact Type
        type: string
    type: object
  ContactRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/Contact"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    required:
      - meta
      - data
    type: object
  ContactResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/Contact"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Country:
    properties:
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      accountid:
        type: string
      ref:
        type: string
      templateid:
        type: string
      totalamount:
        type: number
        format: double
      amount:
        type: number
        format: double
      code:
        type: string
      contactid:
        type: string
      enrollmentstatus:
        type: string
      id:
        type: string
      interest:
        type: number
        format: double
      latitude:
        type: number
        format: double
      longitude:
        type: number
        format: double
      name:
        type: string
      penalty:
        format: double
        type: number
      reportedadjustments:
        description: Reported Adjustments
        type: number
        format: double
      reporteddeductions:
        description: Reported Deductions
        type: number
        format: double
      reportednetrevenue:
        description: Reported Net Revenue
        type: number
        format: double
      reportedrate:
        description: Reported Rate
        type: number
        format: double
      reportedrevenue:
        description: Reported Revenue
        type: number
        format: double
      revenuebase:
        description: Rollup Revenue Base
        type: number
        format: double
      revenuenet:
        description: Rollup Revenue Net
        type: number
        format: double
      revenuenottaxable:
        description: Rollup Revenue Not Taxable
        type: number
        format: double
      stateid:
        type: string
      status:
        type: string
      subtotal:
        type: number
        format: double
      taxinstances:
        items:
          $ref: "#/definitions/TaxInstance"
        type: array
      unitbase:
        type: number
    type: object
  CountryResponse:
    description: An array of Country objects
    properties:
      data:
        items:
          $ref: "#/definitions/Country"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  County:
    properties:
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      accountid:
        type: string
      templateid:
        type: string
      ref:
        type: string
      amount:
        type: number
      areadescription:
        type: string
      contactid:
        type: string
      countryid:
        type: string
      enrollmentstatus:
        type: string
      fips:
        type: string
      fipsclass:
        type: string
      functionalstatus:
        type: string
      geocode:
        type: string
      latitude:
        type: number
        format: double
      longitude:
        type: number
        format: double
      gnis:
        format: int64
        type: number
      totalarea:
        format: int64
        type: number
      landarea:
        format: int64
        type: number
      waterarea:
        format: int64
        type: number
      id:
        type: string
      hasdistricttaxes:
        type: boolean
      interest:
        type: number
        format: double
      legalname:
        type: string
      name:
        type: string
      penalty:
        type: number
        format: double
      reportedadjustments:
        type: number
        format: double
      reporteddeductions:
        type: number
        format: double
      reportednetrevenue:
        type: number
        format: double
      reportedrate:
        type: number
        format: double
      reportedrevenue:
        type: number
        format: double
      revenuebase:
        type: number
        format: double
      revenuenet:
        type: number
        format: double
      revenuenottaxable:
        type: number
        format: double
      totalamount:
        type: number
        format: double
      stateId:
        type: string
      statefips:
        type: string
      status:
        type: string
      subtotal:
        type: number
      taxinstances:
        items:
          $ref: "#/definitions/TaxInstance"
        type: array
      taxontax:
        type: boolean
      unitbase:
        type: number
    type: object
  CountyResponse:
    description: An array of County objects
    properties:
      data:
        items:
          $ref: "#/definitions/County"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Domain:
    properties:
      active:
        description: Active
        type: boolean
      description:
        description: Description
        type: string
      id:
        description: Taxnexus Record Id Only; not used in POST
        type: string
      name:
        description: Name
        type: string
    type: object
  DomainResponse:
    description: An array of Domain objects
    properties:
      data:
        items:
          $ref: "#/definitions/Domain"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Error:
    properties:
      code:
        format: int64
        type: integer
      message:
        type: string
    type: object
  Filing:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        type: string
      authorityid:
        type: string
      accountname:
        description: Account Name on Filing
        type: string
      amount:
        description: The amount of tax to be paid with this filing
        format: double
        type: number
      contactid:
        description: Billing Contact
        type: string
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      filingdate:
        description: Filing Date
        type: string
      duedate:
        description: Due Date
        format: string
      filingnumber:
        description: Due Date
        format: string
      filingtypeid:
        description: The ID of the Filing Type for this Filing
        format: string
      frequency:
        description: Due Date
        format: string
      id:
        description: Record Id
        type: string
      interest:
        description: Interest
        format: double
        type: number
      interestrate:
        description: Interest
        format: double
        type: number
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      monthnumber:
        description: The number of the Month of the filing
        format: int64
        type: number
      ownerid:
        description: Taxneuxs ID of the User who owns this record
        type: string
      penalty:
        description: Penalty
        format: double
        type: number
      penaltydays:
        description: Penalty Days
        format: double
        type: number
      penaltyrate:
        description: Penalty Days
        format: double
        type: number
      periodid:
        description: Period
        type: string
      preparerid:
        description: Taxnexus ID of the Contact who prepared this filing
        type: string
      quarternumber:
        description: The number of the Month of the filing
        format: int64
        type: number
      ref:
        description: "Source System identifier for this record, if any"
        type: string
      reportedadjustments:
        description: Reported Adjustments
        format: double
        type: number
      reporteddeductions:
        description: Reported Deductions
        format: double
        type: number
      reportednetrevenue:
        description: Reported Net Revenue
        format: double
        type: number
      reportedrate:
        description: Reported Rate
        format: double
        type: number
      reportedrevenue:
        description: Reported Revenue
        format: double
        type: number
      revenuebase:
        description: Revenue Base
        format: double
        type: number
      revenuenet:
        description: Revenue Net
        format: double
        type: number
      revenuenottaxable:
        description: Revenue Not Taxable
        format: double
        type: number
      semiannualnumber:
        description: The number of the Month of the filing
        format: int64
        type: number
      status:
        description: Status
        type: string
      submissionid:
        description: Taxnexus ID of the Submission that owns this Filing
        type: string
      subtotal:
        description: Reported Tax
        format: double
        type: number
      taxontax:
        description: Tax On Tax
        format: double
        type: number
      taxtypeaccountid:
        description:
          The TaxType Account for which this Filing is paying remittance
        type: string
      totalamount:
        description: Total Amount
        format: double
        type: number
      unitbase:
        description: Unit Base
        format: double
        type: number
      yearnumber:
        description: The number of the Month of the filing
        format: int64
        type: number
    type: object
  FilingRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/Filing"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    required:
      - meta
      - data
    type: object
  FilingResponse:
    description: An array of Filing Objects
    properties:
      data:
        items:
          $ref: "#/definitions/Filing"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  FilingDueDate:
    type: object
    description: Dates when this FilingType is due for filing
    properties:
      duedate:
        type: string
      description:
        type: string
  FilingTypeInstance:
    type: object
    description: A list of jurisdictions that use this Filing Type
    properties:
      countryid:
        type: string
        description: Country Id
      countyid:
        type: string
        description: County ID
      objecttype:
        type: string
        description:
          The type of object that owns this FilingType instance
      filingtypeid:
        description: The ID of the Filing Type for this Filing
        format: string
      placeid:
        type: string
        description: Place ID
      stateid:
        type: string
        description: StateID
  FilingType:
    type: object
    description: An array of FilingType Objects
    properties:
      accountid:
        description: Tax Authority
        type: string
      contactid:
        description: Contact
        type: string
      createdbyid:
        description: Created By
        type: string
      createddate:
        description: Created Date
        type: string
      duedates:
        items:
          $ref: "#/definitions/FilingDueDate"
        type: array
      filingcity:
        description: Filing City
        type: string
      filingcountry:
        description: Filing Country
        type: string
      filingpostalcode:
        description: Filing Postal Code
        type: string
      filingstate:
        description: Filing State
        type: string
      filingstreet:
        description: Filing Street
        type: string
      formname:
        description: Form Name
        type: string
      formversion:
        description: Form Version
        type: string
      frequency:
        description: Frequency
        type: string
      fullname:
        description: Filing Full Name
        type: string
      id:
        description: Record Id
        type: string
      instances:
        items:
          $ref: "#/definitions/FilingTypeInstance"
        type: array
      lastmodifiedbyid:
        description: Last Modified By
        type: string
      lastmodifieddate:
        description: Last Modifed Date
        type: string
      level:
        description: Jurisdictional Level
        type: string
      name:
        description: Name
        type: string
      ownerid:
        description: Owner
        type: string
      sagatype:
        description: Saga Type
        type: string
      submissionmethod:
        description: Submission Method
        type: string
      templateinstructionsid:
        description: Instructions Template
        type: string
      templatereturnid:
        description: Return Template
        type: string
  FilingTypeRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/FilingType"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    required:
      - meta
      - data
    type: object
  FilingTypeResponse:
    description: An array of Filing Objects
    properties:
      data:
        items:
          $ref: "#/definitions/FilingType"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  GlAccount:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        description: Account
        type: string
      accountlevel:
        description: Account Level
        type: number
      accountname:
        description: Account Name
        type: string
      accountnumber:
        description: Account Number
        type: number
      accountsign:
        description: Account Sign
        type: string
      accounttype:
        description: Account Type
        type: string
      description:
        description: Description
        type: string
      glaccountid:
        description:
          Parent GL Account -- renamed to parentglaccountid in fabric
          metadata
        type: string
      id:
        description: Taxnexus Record Id
        type: string
      isactive:
        description: Is Active?
        type: boolean
      isbankaccount:
        description: Is Bank Account ?
        type: boolean
      issummary:
        description: Is Summary?
        type: boolean
      name:
        type: string
      parentfk:
        description: Parent Foreign Key
        type: string
      status:
        description: Status
        type: string
    type: object
  GlAccountRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/GlAccount"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  GlAccountResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/GlAccount"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  GlBalance:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountname:
        description: Account Name
        type: string
      amount:
        description: Amount
        type: number
      closedate:
        description: Close Date
        type: string
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      credits:
        description: Credits
        type: number
      debits:
        description: Debits
        type: number
      description:
        description: Description
        type: string
      glaccountdisplay:
        description: GL Account Display Value
        type: string
      glaccountid:
        description: GL Account
        type: string
      id:
        description: Taxnexus Record Id
        type: string
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      periodid:
        description: Period ID
        type: string
      ref:
        description: "Source System identifier for this record, if any"
        type: string
      rollupcredits:
        description: Rollup Credits
        type: number
      rollupdebits:
        description: Rollup Debits
        type: number
      status:
        description: Status
        type: string
    type: object
  GlBalanceResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/GlBalance"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Ingest:
    description: A record of the Ingest of information into Taxnexus
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        description: Account ID
        type: string
      amount:
        description: Rollup Tax Amount
        type: number
      backendid:
        description: Backend ID
        type: string
      companyid:
        description: Company ID
        type: string
      createdbyid:
        description: Taxnexus User ID
        type: string
      createddate:
        description: Date of Job Creation
        type: string
      description:
        description: Ingest Description
        type: string
      enddate:
        description: End Date
        type: string
      filename:
        description: Filename
        type: string
      formatted:
        description: Numeric and Date Values Pre-formatted as Text
        properties:
          amount:
            type: string
          ingestdate:
            type: string
          invoicecount:
            type: string
          pocount:
            type: string
          revenuebase:
            type: string
          revenuenottaxable:
            type: string
          tax:
            type: string
          taxontax:
            type: string
          unitbase:
            type: string
        type: object
      id:
        description: Record Id
        type: string
      ingestdate:
        description: Ingest Date
        type: string
      ingestfailurereason:
        description: Ingest Failure Reason
        type: string
      ingesttype:
        description: Ingest Type
        type: string
      invoicecount:
        description: Invoice Count
        format: int64
        type: number
      jobid:
        description: Job ID
        type: string
      lastmodifiedbyid:
        description: Taxnexus User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      metrclicense:
        description: License
        type: string
      metrcstate:
        description: State Code
        type: string
      objecttype:
        description: Ingest Object Type
        type: string
      parentfk:
        description: Parent Foreign Key
        type: string
      periodid:
        description: Period ID
        type: string
      pocount:
        description: PO Count
        format: int64
        type: number
      postfailurereason:
        description: Post Failure Reason
        type: string
      ratingengineid:
        description: Rating Engine ID
        type: string
      ref:
        description: Source System Reference
        type: string
      revenuebase:
        description: Rollup Revenue Base
        type: number
      revenuenet:
        description: Rollup Revenue Net
        type: number
      revenuenottaxable:
        description: Rollup Revenue Not Taxable
        type: number
      sagaid:
        description:
          The Saga ID used to link log entries and transactions
        type: string
      sagatype:
        description: The type of Saga transaction being performed
        type: string
      source:
        description: The source system that generated this job
        type: string
      startdate:
        description: Start Date
        type: string
      status:
        description: Ingest Status
        type: string
      tax:
        description: Rollup Tax
        type: number
      taxontax:
        description: Rollup Tax On Tax
        type: number
      taxtransactioncount:
        description: Tax Transaction Count
        format: int64
        type: number
      templateid:
        description: Template
        type: string
      unitbase:
        description: Rollup Unit Base
        format: int64
        type: number
    required:
      - accountid
      - objecttype
    type: object
  IngestRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/Ingest"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  IngestResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/Ingest"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  InvalidError:
    allOf:
      - $ref: "#/definitions/Error"
      - properties:
          details:
            items:
              type: string
            type: array
        type: object
  Job:
    properties:
      accountid:
        description: Taxnexus Account Id
        type: string
      backendid:
        description: Taxnexus Backend ID
        type: string
      companyid:
        description: Taxnexus Company ID
        type: string
      coordinateid:
        description: Taxnexus Coordinate ID
        type: string
      createdbyid:
        description: Taxnexus User ID
        type: string
      createddate:
        description: Date of Job Creation
        type: string
      month:
        type: number
        format: int64
      quarter:
        type: number
        format: int64
      semiannual:
        type: number
        format: int64
      year:
        type: number
        format: int64
      duration:
        description:
          The amount of time after the Start Time to perform one or more
          jobs
        enum:
          - day
          - document
          - hour
          - minute
          - month
          - quarter
          - second
          - week
          - year
        type: string
      enddate:
        description: End Date/Time
        type: string
      errorreason:
        description: Error Reason
        type: string
      id:
        description: Taxnexus Record Id of the Job record
        type: string
      interval:
        description:
          The time interval by which multiple jobs are executed within
          the Duration
        enum:
          - day
          - each
          - hour
          - minute
          - month
          - quarter
          - second
          - week
          - year
        type: string
      jobdate:
        description: Job Date
        type: string
      lastmodifiedbyid:
        description: Last Modified By
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      nextjobid:
        description: Next Job
        type: string
      objecttype:
        description: Object Type
        enum:
          - invoice
          - order
          - po
          - quote
        type: string
      ownerid:
        description: The user ID that owns this job
        type: string
      parameters:
        description: Any parameters needed to process the job
        type: string
      periodid:
        description: Period
        type: string
      ratingengineid:
        description: Rating Engine
        type: string
      ref:
        description: External Reference
        type: string
      reschedule:
        description: Reschedule?
        type: boolean
      rescheduleinterval:
        description: Reschedule Interval
        format: int64
        type: number
      sagaid:
        description:
          The Saga ID used to link log entries and transactions
        type: string
      sagatype:
        description: The type of Saga transaction being performed
        enum:
          - newGLPostInvoices
          - newIngestInvoice
          - newIngestPO
        type: string
      source:
        description: The source system that generated this job
        enum:
          - api
          - fabric
          - taxnexus
          - telnexus
        type: string
      startdate:
        description: Start Date/Time
        type: string
      status:
        description: Status
        enum:
          - active
          - complete
          - error
          - new
          - queued
        type: string
      target:
        description: The target system that executes this job
        enum:
          - api
          - fabric
          - taxnexus
          - telnexus
        type: string
      type:
        description: Type
        enum:
          - coordinate
          - email
          - ingest
          - tax
        type: string
    type: object
  JobRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/Job"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    required:
      - meta
      - data
    type: object
  JobResponse:
    description: An array of Print-Ready ingest Objects
    properties:
      data:
        items:
          $ref: "#/definitions/Job"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  License:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        type: string
      backendid:
        type: string
      contactid:
        type: string
      createdbyid:
        type: string
      createddate:
        type: string
      dateissued:
        type: string
      expirationdate:
        type: string
      id:
        type: string
      iscanceled:
        type: boolean
      isrevoked:
        type: boolean
      lastmodifiedbyid:
        type: string
      lastmodifieddate:
        type: string
      licensetypeid:
        type: string
      name:
        type: string
      ref:
        type: string
      status:
        type: string
    type: object
  LicenseRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/License"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  LicenseResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/License"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  LicenseType:
    properties:
      accountid:
        type: string
      agentid:
        type: string
      contactid:
        type: string
      cost:
        description: Cost
        type: number
        format: double
      createdbyid:
        type: string
      createddate:
        type: string
      domainid:
        type: string
      frequency:
        description: Frequency
        type: string
      id:
        description: Taxnexus Record Id
        type: string
      lastmodifiedbyid:
        type: string
      lastmodifieddate:
        type: string
      level:
        description: Level
        type: string
      name:
        description: License Type Name
        type: string
      picklistvalue:
        description: Picklist Value
        type: string
      ref:
        description: "Source System identifier for this record, if any"
        type: string
      restriction:
        description: Restriction
        type: string
      tier:
        description: Tier
        type: string
      domains:
        type: array
        items:
          type: string
      jurisdictions:
        type: array
        items:
          $ref: "#/definitions/GeoLicenseTypeInstance"
    type: object
  GeoLicenseTypeInstance:
    description: Links a license type to a geography
    type: object
    properties:
      objecttype:
        type: string
      placeid:
        type: string
      countyid:
        type: string
      stateid:
        type: string
      countryid:
        type: string
  LicenseTypeResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/LicenseType"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Pagination:
    properties:
      nextlink:
        type: string
      plimit:
        format: int64
        type: integer
      poffset:
        format: int64
        type: integer
      pagesize:
        format: int64
        type: integer
      setsize:
        format: int64
        type: integer
    type: object
  Period:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      accountid:
        description: Account that owns this Period
        type: string
      companyid:
        description: Company
        type: string
      days:
        description: Days
        format: int64
        type: number
      enddate:
        description: End Date
        type: string
      id:
        description: Taxnexus Record Id
        type: string
      month:
        description: Month in numeric format
        format: int64
        type: number
      name:
        description: Period Name
        type: string
      quarter:
        description: The Quarter of this period in numeric format
        format: int64
        type: number
      ref:
        description: "Source System identifier for this record, if any"
        type: string
      semiannual:
        description: The Semiannual period in numeric format
        format: int64
        type: number
      startdate:
        description: Start Date
        type: string
      status:
        description: Status
        type: string
      year:
        description: Year in numeric format
        format: int64
        type: number
    type: object
  PeriodRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/Period"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  PeriodResponse:
    description: An array of Period objects
    properties:
      data:
        items:
          $ref: "#/definitions/Period"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Place:
    properties:
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      accountid:
        type: string
      latitude:
        type: number
        format: double
      longitude:
        type: number
        format: double
      accountvalidation:
        type: string
      templateid:
        type: string
      ref:
        type: string
      amount:
        type: number
        format: double
      totalamount:
        type: number
        format: double
      areadescription:
        type: string
      companyid:
        type: string
      contactid:
        type: string
      countryid:
        type: string
      countyid:
        type: string
      enrollmentstatus:
        type: string
      fips:
        type: string
      fipsclass:
        type: string
      functionalstatus:
        type: string
      geocode:
        type: string
      gnis:
        format: int64
        type: number
      landarea:
        format: int64
        type: number
      waterarea:
        format: int64
        type: number
      totalarea:
        format: int64
        type: number
      hasdistricttaxes:
        type: boolean
      id:
        type: string
      interest:
        type: number
      legalname:
        type: string
      name:
        type: string
      penalty:
        type: number
      reportedadjustments:
        description: Reported Adjustments
        type: number
        format: double
      reporteddeductions:
        description: Reported Deductions
        type: number
        format: double
      reportednetrevenue:
        description: Reported Net Revenue
        type: number
        format: double
      reportedrate:
        description: Reported Rate
        type: number
        format: double
      reportedrevenue:
        description: Reported Revenue
        type: number
        format: double
      revenuebase:
        description: Rollup Revenue Base
        type: number
        format: double
      revenuenet:
        description: Rollup Revenue Net
        type: number
        format: double
      revenuenottaxable:
        description: Rollup Revenue Not Taxable
        type: number
        format: double
      split:
        type: boolean
      statecode:
        type: string
      stateid:
        type: string
      status:
        type: string
      subtotal:
        type: number
      tax:
        type: number
      taxinstances:
        items:
          $ref: "#/definitions/TaxInstance"
        type: array
      taxontax:
        type: boolean
      unitbase:
        type: number
    type: object
  PlaceResponse:
    description: An array of Place objects
    properties:
      data:
        items:
          $ref: "#/definitions/Place"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  RequestMeta:
    properties:
      password:
        description: Salesforce Password
        type: string
      taxnexusaccount:
        description: Taxnexus Account Number of the Reseller or OEM
        type: string
      token:
        description: Salesforce Security Token
        type: string
      username:
        description: Salesforce 'API User' User Name
        type: string
    type: object
  ResponseMeta:
    properties:
      contact:
        type: string
      copyright:
        type: string
      info:
        type: string
      license:
        type: string
      operationid:
        type: string
      pagination:
        $ref: "#/definitions/Pagination"
      requestip:
        type: string
      requesttype:
        type: string
      requesturl:
        type: string
      serverinfo:
        type: string
      serverresponsetime:
        type: string
      servertimestamp:
        type: string
      starttime:
        type: number
      taxnexusaccount:
        type: string
      userid:
        type: string
    type: object
  State:
    properties:
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      templateid:
        type: string
      ref:
        type: string
      landarea:
        format: int64
        type: number
      waterarea:
        format: int64
        type: number
      totalarea:
        format: int64
        type: number
      latitude:
        type: number
        format: double
      longitude:
        type: number
        format: double
      accountid:
        type: string
      amount:
        type: number
        format: double
      totalamount:
        type: number
        format: double
      code:
        type: string
      companyid:
        type: string
      contactid:
        type: string
      countryid:
        type: string
      division:
        type: string
      enrollmentstatus:
        type: string
      fips:
        type: string
      geocode:
        type: string
      gnis:
        format: int64
        type: number
      id:
        type: string
      interest:
        format: double
        type: number
      name:
        type: string
      penalty:
        format: double
        type: number
      region:
        type: string
      reportedadjustments:
        description: Reported Adjustments
        type: number
        format: double
      reporteddeductions:
        description: Reported Deductions
        type: number
        format: double
      reportednetrevenue:
        description: Reported Net Revenue
        type: number
        format: double
      reportedrate:
        description: Reported Rate
        type: number
        format: double
      reportedrevenue:
        description: Reported Revenue
        type: number
        format: double
      revenuebase:
        description: Rollup Revenue Base
        type: number
        format: double
      revenuenet:
        description: Rollup Revenue Net
        type: number
        format: double
      revenuenottaxable:
        description: Rollup Revenue Not Taxable
        type: number
        format: double
      sgc:
        type: string
      status:
        type: string
      subtotal:
        format: double
        type: number
      taxinstances:
        items:
          $ref: "#/definitions/TaxInstance"
        type: array
      taxontax:
        type: boolean
      unitbase:
        format: double
        type: number
    type: object
  StateResponse:
    description: An array of State objects
    properties:
      data:
        items:
          $ref: "#/definitions/State"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Submission:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      companyid:
        description: The Company that did the submission (Taxnexus)
        type: string
      contactid:
        description: Submission Contact
        type: string
      createdbyid:
        description: Created By User ID
        type: string
      createddate:
        description: Created Date
        type: string
      id:
        description: Taxnexus Record Id Only; not used in POST
        type: string
      lastmodifiedbyid:
        description: Last Modified By User ID
        type: string
      lastmodifieddate:
        description: Last Modified Date
        type: string
      notes:
        description: Cover Letter
        type: string
      parentfk:
        description:
          UUID Reference the master record that owns this item
        type: string
      penalty:
        description: Penalty paid
        format: double
        type: number
      ref:
        description: "Source System identifier for this record, if any"
        type: string
      reportedadjustments:
        description: Reported Adjustments
        format: double
        type: number
      reporteddeductions:
        description: Reported Deductions
        format: double
        type: number
      reportednetrevenue:
        description: Reported Net Revenue
        format: double
        type: number
      reportedrate:
        description: Reported Rate
        format: double
        type: number
      reportedrevenue:
        description: Reported Revenue
        format: double
        type: number
      revenuebase:
        description: Revenue Base
        format: double
        type: number
      revenuenet:
        description: Revenue Net
        format: double
        type: number
      revenuenottaxable:
        description: Revenue Not Taxable
        format: double
        type: number
      status:
        description: Status
        type: string
      submissiondate:
        description: Submission Date
        type: string
      submissionnumber:
        description: Submission Number
        type: string
      subtotal:
        description: Amount of remittance before penalty
        format: double
        type: number
      taxtypeid:
        description:
          Taxnexus ID of the TaxType for which this submssion is being
          made
        type: string
      totalamount:
        description: Total Amount of remittance
        format: double
        type: number
    type: object
  SubmissionRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/Submission"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  SubmissionResponse:
    description: An array of Submission objects
    properties:
      data:
        items:
          $ref: "#/definitions/Submission"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  TaxInstance:
    properties:
      countryid:
        type: string
      countyid:
        type: string
      createdbyid:
        type: string
      createddate:
        type: string
      lastmodifiedbyid:
        type: string
      lastmodifieddate:
        type: string
      placeid:
        type: string
      stateid:
        type: string
      taxtypeid:
        type: string
      type:
        type: string
    type: object
  TaxType:
    properties:
      accountid:
        type: string
      accountingrulecode:
        type: string
      active:
        type: boolean
      agencytype:
        type: string
      agentid:
        type: string
      amount:
        type: number
      category:
        type: string
      chaintype:
        type: string
      collectordomainid:
        type: string
      companyid:
        type: string
      contactid:
        type: string
      createdbyid:
        type: string
      createddate:
        type: string
      description:
        type: string
      domainname:
        type: string
      effectivedate:
        type: string
      enddate:
        type: string
      enrollmentstatus:
        type: string
      filingcity:
        type: string
      filingcountry:
        type: string
      filingemail:
        type: string
      filingmethod:
        type: string
      filingpostalcode:
        type: string
      filingstate:
        type: string
      filingstreet:
        type: string
      fractional:
        type: boolean
      frequency:
        type: string
      geocodestring:
        type: string
      id:
        type: string
      interestrate:
        type: number
      ismedicinal:
        type: boolean
      isrecreational:
        type: boolean
      itemamount:
        type: number
      itemcount:
        type: number
      lastmodifiedbyid:
        type: string
      lastmodifieddate:
        type: string
      markuprate:
        type: number
      name:
        type: string
      passthrough:
        type: boolean
      penaltydays:
        format: int64
        type: number
      penaltyrate:
        type: number
      rate:
        type: number
      reference:
        type: string
      revenuebase:
        type: number
      revenuenet:
        type: number
      revenuenottaxable:
        type: number
      salesregulation:
        type: string
      status:
        type: string
      taxauthority:
        type: string
      taxcategory:
        type: string
      taxcategorycode:
        type: string
      taxcodename:
        type: string
      taxnexuscodeid:
        type: string
      taxnexusnumber:
        type: string
      taxontax:
        type: boolean
      taxontaxrollup:
        type: number
      taxtypecode:
        type: string
      templateid:
        type: string
      unitbase:
        type: number
      units:
        type: string
    type: object
  TaxTypeResponse:
    description: An array of Tax Type objects
    properties:
      data:
        items:
          $ref: "#/definitions/TaxType"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  TaxTypeAccount:
    properties:
      tenantid:
        type: string
      accountid:
        description: Account
        type: string
      accountnumber:
        description: Account Number
        type: string
      active:
        description: Active
        type: boolean
      amount:
        description: Rollup Amount
        format: double
        type: number
      contactid:
        description: Contact ID
        type: string
      createdbyid:
        type: string
      createddate:
        type: string
      description:
        description: Description
        type: string
      enddate:
        description: End Date
        type: string
      id:
        description: Taxnexus Record Id Only; not used in POST
        type: string
      interest:
        description: Interest
        type: number
      lastmodifiedbyid:
        type: string
      lastmodifieddate:
        type: string
      notes:
        description: Notes
        type: string
      parentfk:
        description:
          UUID Reference the master record that owns this item
        type: string
      penalty:
        description: Penalty
        format: double
        type: number
      ref:
        description: "Source System identifier for this record, if any"
        type: string
      reportedadjustments:
        description: Reported Adjustments
        format: double
        type: number
      reporteddeductions:
        description: Reported Deductions
        format: double
        type: number
      reportednetrevenue:
        description: Reported Net Revenue
        format: double
        type: number
      reportedrate:
        description: Reported Rate
        format: double
        type: number
      reportedrevenue:
        description: Reported Revenue
        format: double
        type: number
      revenuebase:
        description: Rollup Revenue Base
        format: double
        type: number
      revenuenet:
        description: Rollup Revenue Net
        format: double
        type: number
      revenuenottaxable:
        description: Rollup Revenue Not Taxable
        format: double
        type: number
      startdate:
        description: Start Date
        type: string
      subtotal:
        description: Reported Tax
        format: double
        type: number
      tax:
        description: Rollup Tax
        format: double
        type: number
      taxontax:
        description: Rollup Tax on Tax
        format: double
        type: number
      taxtypeid:
        description: Tax Type
        type: string
      totalamount:
        description: Total Amount
        format: double
        type: number
      unitbase:
        description: Rollup Unit Base
        format: double
        type: number
    type: object
  TaxTypeAccountRequest:
    properties:
      data:
        items:
          $ref: "#/definitions/TaxTypeAccount"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  TaxTypeAccountResponse:
    description: An array of TaxType Account objects with Contacts
    properties:
      data:
        items:
          $ref: "#/definitions/TaxTypeAccount"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  TaxnexusCode:
    properties:
      active:
        type: boolean
      code:
        type: string
      createdbyid:
        type: string
      createddate:
        type: string
      description:
        type: string
      domainid:
        type: string
      domainname:
        type: string
      id:
        type: string
      lastmodifiedbyid:
        type: string
      lastmodifieddate:
        type: string
      level:
        type: string
      part1:
        type: string
      part2:
        type: string
      part3:
        type: string
      part4:
        type: string
      part5:
        type: string
      purchasingRulesetCode:
        type: string
      purchasingRulesetID:
        type: string
      ref:
        type: string
      revenueRulesetCode:
        type: string
      revenueRulesetID:
        type: string
    type: object
  TaxnexusCodeResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/TaxnexusCode"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Template:
    properties:
      tenantid:
        description: tenant identifier
        type: string
      companyid:
        description: Company
        type: string
      createdbyid:
        type: string
      createddate:
        type: string
      description:
        description: Description
        type: string
      htmlbody:
        description: HTML Body
        type: string
      id:
        description: Taxnexus Record Id
        type: string
      isactive:
        description: Active?
        type: boolean
      ismaster:
        description: Master Template?
        type: boolean
      lastmodifiedbyid:
        type: string
      lastmodifieddate:
        type: string
      name:
        description: Template Name
        type: string
      objecttype:
        description: Object
        type: string
      recordtypename:
        description: Record Type Name
        type: string
      type:
        description: Type
        type: string
      url:
        description: URL
        type: string
    type: object
  TemplateResponse:
    properties:
      data:
        items:
          $ref: "#/definitions/Template"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  Notebook:
    description: Defines a Taxnexus Notebook
    type: object
    properties:
      id:
        type: string
        description: Record Id
      accountid:
        type: string
        description: Account
      contactid:
        type: string
        description: Contact
      createdbyid:
        type: string
        description: Created By
      createddate:
        type: string
        description: Created Date
      date:
        type: string
        description: Analysis Date
      dateend:
        type: string
        description: End Date
      datestart:
        type: string
        description: Start Date
      description:
        type: string
        description: Description
      lastmodifiedbyid:
        type: string
        description: Last Modified By
      lastmodifieddate:
        type: string
        description: Last Modifed Date
      periodendid:
        type: string
        description: Ending Period
      periodstartid:
        type: string
        description: Starting Period
      preparerid:
        type: string
        description: Preparer
      title:
        type: string
        description: Title
      items:
        type: array
        items:
          $ref: "#/definitions/NotebookItem"
  NotebookRequest:
    description: An array of Notebook objects
    properties:
      data:
        items:
          $ref: "#/definitions/Notebook"
        type: array
      meta:
        $ref: "#/definitions/RequestMeta"
    type: object
  NotebookResponse:
    description: An array of Notebook objects
    properties:
      data:
        items:
          $ref: "#/definitions/Notebook"
        type: array
      meta:
        $ref: "#/definitions/ResponseMeta"
    type: object
  NotebookItem:
    type: object
    description: An analysis item associated with a Notebook
    properties:
      id:
        type: string
        description: Record Id
      itemname:
        type: string
        description: Developer name of component
      title:
        type: string
        description: Display title
      notebookid:
        type: string
        description: The notebook that owns this Item
