> ## Documentation Index
> Fetch the complete documentation index at: https://developers.pleo.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Returns a list of tax codes



## OpenAPI

````yaml post /v0/tax-codes:search
openapi: 3.0.1
info:
  title: Gjoll API
  description: Gjoll OpenAPI definitions
  termsOfService: https://pleo.io/terms/
  contact:
    email: team-accounting-core@pleo.io
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  version: 84.1.2
servers:
  - url: https://external.pleo.io
    description: Production server
  - url: https://external.staging.pleo.io
    description: Staging server
security:
  - bearerAuth: []
  - basicAuth: []
tags:
  - name: reconciliation
    description: Reconciliation API
  - name: accounts
    description: Accounts API
  - name: categories
    description: Categories API
  - name: tax-codes
    description: Tax Codes API
  - name: accounting-entries
    description: |-
      The Accounting Entries API endpoints enable you to perform the following:
        - Apply filters and search for accounting entries and accounting receipts.
        - Retrieve list of accounting entries and accounting receipts.
        - Retrieve details of a specific accounting entry.
paths:
  /v0/tax-codes:search:
    post:
      tags:
        - tax-codes
      summary: Returns a list of tax codes
      operationId: getTaxCodes
      parameters:
        - name: company_id
          in: query
          required: false
          style: form
          explode: true
          schema:
            type: string
            description: Fetch a list of tax codes for a given company
            format: uuid
        - name: before
          in: query
          description: >-
            Lower bound of the page of data to return (cannot be used together
            with [after] or [offset]).
          required: false
          style: form
          explode: true
          schema:
            type: string
        - name: after
          in: query
          description: >-
            Upper bound of the page of data to return (cannot be used together
            with [before] or [offset]).
          required: false
          style: form
          explode: true
          schema:
            type: string
        - name: offset
          in: query
          description: >-
            Offset of the page of data to return (cannot be used together with
            [before] or [after]).
          required: false
          style: form
          explode: true
          schema:
            type: integer
            format: int64
        - name: limit
          in: query
          description: The maximum amount of items to return.
          required: false
          style: form
          explode: true
          schema:
            type: integer
            format: int32
        - name: sorting_keys
          in: query
          description: The keys to sort the results by.
          required: false
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
        - name: sorting_order
          in: query
          description: >-
            The order to sort the results by. Must be the same length as
            [sortingKeys]; one order per key.
          required: false
          style: form
          explode: true
          schema:
            type: array
            items:
              $ref: '#/components/schemas/PageOrder'
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/TaxCodeSearchRequest'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/CursorPaginatedResponseTaxCodeModel'
components:
  schemas:
    PageOrder:
      type: string
      enum:
        - ASC
        - ASC_NULLS_FIRST
        - ASC_NULLS_LAST
        - DESC
        - DESC_NULLS_FIRST
        - DESC_NULLS_LAST
    TaxCodeSearchRequest:
      type: object
      properties:
        archived:
          type: boolean
          description: >-
            If set to true will only return tax codes that have been archived,
            if set to false will only return tax codes that have not been
            archived. By default,both archived and non-archived tax codes will
            be returned.
        code:
          type: string
          description: Filter by code.
        taxCodeIds:
          uniqueItems: true
          type: array
          description: >-
            Useful for fetching a list of tax codes given a specific list of
            IDs.
          items:
            type: string
            description: >-
              Useful for fetching a list of tax codes given a specific list of
              IDs.
            format: uuid
        type:
          $ref: '#/components/schemas/TaxCodeTypeModel'
    CursorPaginatedResponseTaxCodeModel:
      required:
        - data
        - pagination
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TaxCodeModel'
        pagination:
          $ref: '#/components/schemas/CursorPageInfo'
    TaxCodeTypeModel:
      type: string
      description: >-
        Classification of this tax code. Exclusive tax codes are not currently
        supported.
      enum:
        - inclusive
        - exclusive
        - reverse
    TaxCodeModel:
      required:
        - archived
        - companyId
        - createdAt
        - id
        - name
        - rate
        - type
        - updatedAt
      type: object
      properties:
        accountingIntegrationSystem:
          type: string
          description: Accounting integration system
          nullable: true
        archived:
          type: boolean
          description: >-
            Boolean flag used to archive or unarchive an account (when set to
            true, account is not visible or usable on the platform)
        code:
          type: string
          description: The accounting system's internal identifier of the tax code
          nullable: true
          example: '01'
        companyId:
          type: string
          description: The Pleo unique identifier of the company the tax code belongs to
          format: uuid
        createdAt:
          pattern: YYYY-MM-DDTHH:mi:ssZ
          type: string
          description: Date and time the tax code was created
          format: date-time
        id:
          type: string
          description: The unique identifier generated by Pleo for the tax code
          format: uuid
        ingoingTaxAccount:
          type: string
          description: Ingoing tax account usually used to account for reverse VAT
          nullable: true
        name:
          type: string
          description: Name of the tax code
          example: Standardmoms (25 %)
        outgoingTaxAccount:
          type: string
          description: Outgoing tax account usually used to account for reverse VAT
          nullable: true
        rate:
          type: number
          description: >-
            Percentage rate applied for this tax code (This is represented in
            decimals and not the percentage. e.g. 20% tax rate would be 0.20)
        type:
          $ref: '#/components/schemas/TaxCodeTypeModel'
        updatedAt:
          pattern: YYYY-MM-DDTHH:mi:ssZ
          type: string
          description: Date and time the tax code was last updated
          format: date-time
    CursorPageInfo:
      required:
        - currentRequestPagination
        - hasNextPage
        - hasPreviousPage
      type: object
      properties:
        currentRequestPagination:
          $ref: '#/components/schemas/CursorPageCurrentRequestInfo'
        endCursor:
          type: string
        hasNextPage:
          type: boolean
        hasPreviousPage:
          type: boolean
        startCursor:
          type: string
        total:
          type: integer
          format: int64
    CursorPageCurrentRequestInfo:
      required:
        - parameters
      type: object
      properties:
        after:
          type: string
        before:
          type: string
        limit:
          type: integer
          format: int32
        offset:
          type: integer
          format: int64
        parameters:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
        sortingKeys:
          type: array
          items:
            type: string
        sortingOrder:
          type: array
          items:
            $ref: '#/components/schemas/PageOrder'
  securitySchemes:
    bearerAuth:
      type: http
      description: >-
        JWT Bearer token authentication. Include the token in the Authorization
        header as: `Bearer <token>`
      scheme: bearer
      bearerFormat: JWT
    basicAuth:
      type: http
      description: >-
        Basic HTTP authentication using API key. Use your API key as the
        username and leave the password empty. The credentials will be Base64
        encoded automatically.
      scheme: basic

````