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

# Get products



## OpenAPI

````yaml /.tooling/schemas/rest/tags/product-finops.json get /finops/v1/products
openapi: 3.1.0
info:
  title: Tesouro Partner API
  version: '2026-09-24'
  description: The Tesouro REST API, for Tesouro partners to integrate with our solution.
  termsOfService: https://tesouro.com/terms
  contact:
    name: Tesouro team
    url: https://tesouro.com/about/
    email: developers@tesouro.com
servers:
  - url: https://api.sandbox.tesouro.com
    description: Sandbox
security: []
tags:
  - name: Accounting connections
  - name: Accounting data pull
  - name: Accounting synchronized records
  - name: Accounting tax rates
  - name: Analytics
  - name: Approval policies
  - name: Approval requests
  - name: Bank details
  - name: Comments
  - name: Cost centers
  - name: Counterpart addresses
  - name: Counterpart bank accounts
  - name: Counterpart contacts
  - name: Counterpart VAT IDs
  - name: Counterparts
  - name: Credit notes
  - name: Custom tax rates
  - name: Delivery notes
  - name: Departments
  - name: Disclosures
  - name: Documents
  - name: Events
  - name: Files
  - name: Ledger accounts
  - name: Locations
  - name: Mail templates
  - name: Mailbox domains
  - name: Mailboxes
  - name: Measure units
  - name: OCR
  - name: OIDC applications
  - name: Organizations
  - name: Overdue reminders
  - name: Payable duplicates
  - name: Payable line items
  - name: Payables
  - name: Payment intents
  - name: Payment links
  - name: Payment methods
  - name: Payment records
  - name: Payment reminders
  - name: Payment terms
  - name: PDF templates
  - name: Products
  - name: Projects
  - name: Purchase orders
  - name: Receipts
  - name: Receivables
  - name: Recurrences
  - name: Roles
  - name: Tags
  - name: Text templates
  - name: Transactions
  - name: Users
  - name: Webhook deliveries
  - name: Webhook subscriptions
paths:
  /finops/v1/products:
    get:
      tags:
        - Products
      summary: Get products
      operationId: get_products
      parameters:
        - required: true
          schema:
            type: string
            format: date
          example: '2026-09-24'
          name: x-finops-version
          in: header
        - name: order
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/OrderEnum'
            default: asc
          description: >-
            Sort order (ascending by default). Typically used together with the
            `sort` parameter.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            maximum: 100
            minimum: 1
            default: 100
          description: >-
            The number of items (0 .. 100) to return in a single page of the
            response. The response may contain fewer items if it is the last or
            only page.
        - name: pagination_token
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
          description: >-
            A pagination token obtained from a previous call to this endpoint.
            Use it to get the next or previous page of results for your initial
            query. If `pagination_token` is specified, all other query
            parameters are ignored and inferred from the initial query.


            If not specified, the first page of results will be returned.
        - name: sort
          in: query
          required: false
          schema:
            anyOf:
              - $ref: '#/components/schemas/ProductCursorFields'
              - type: 'null'
          description: >-
            The field to sort the results by. Typically used together with the
            `order` parameter.
        - name: id__in
          in: query
          required: false
          schema:
            items:
              type: string
              format: uuid
            type: array
        - name: name
          in: query
          required: false
          schema:
            type: string
            maxLength: 100
        - name: name__contains
          in: query
          required: false
          schema:
            type: string
            maxLength: 100
        - name: name__icontains
          in: query
          required: false
          schema:
            type: string
            maxLength: 100
        - name: type
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/ProductServiceTypeEnum'
        - name: price
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
        - name: price__gt
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
        - name: price__lt
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
        - name: price__gte
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
        - name: price__lte
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
        - name: currency
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/CurrencyEnum'
        - name: currency__in
          in: query
          required: false
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CurrencyEnum'
        - name: measure_unit_id
          in: query
          required: false
          schema:
            type: string
            format: uuid
        - name: created_at__gt
          in: query
          required: false
          schema:
            type: string
            format: date-time
        - name: created_at__lt
          in: query
          required: false
          schema:
            type: string
            format: date-time
        - name: created_at__gte
          in: query
          required: false
          schema:
            type: string
            format: date-time
        - name: created_at__lte
          in: query
          required: false
          schema:
            type: string
            format: date-time
        - name: x-organization-id
          in: header
          required: true
          schema:
            type: string
            format: uuid
            examples:
              - 9d2b4c8f-2087-4738-ba91-7359683c49a4
          description: The ID of the entity that owns the requested resource.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductServicePaginationResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
      security:
        - HTTPBearer: []
components:
  schemas:
    OrderEnum:
      type: string
      enum:
        - asc
        - desc
    ProductCursorFields:
      type: string
      enum:
        - name
    ProductServiceTypeEnum:
      type: string
      enum:
        - product
        - service
    CurrencyEnum:
      type: string
      enum:
        - AED
        - AFN
        - ALL
        - AMD
        - ANG
        - AOA
        - ARS
        - AUD
        - AWG
        - AZN
        - BAM
        - BBD
        - BDT
        - BGN
        - BHD
        - BIF
        - BMD
        - BND
        - BOB
        - BRL
        - BSD
        - BTN
        - BWP
        - BYN
        - BZD
        - CAD
        - CDF
        - CHF
        - CLP
        - CNY
        - COP
        - CRC
        - CVE
        - CZK
        - DJF
        - DKK
        - DOP
        - DZD
        - EGP
        - ETB
        - EUR
        - FJD
        - FKP
        - GBP
        - GEL
        - GHS
        - GIP
        - GMD
        - GNF
        - GTQ
        - GYD
        - HKD
        - HNL
        - HTG
        - HUF
        - IDR
        - ILS
        - INR
        - IQD
        - ISK
        - JMD
        - JOD
        - JPY
        - KES
        - KGS
        - KHR
        - KMF
        - KRW
        - KWD
        - KYD
        - KZT
        - LAK
        - LBP
        - LKR
        - LRD
        - LSL
        - LYD
        - MAD
        - MDL
        - MGA
        - MKD
        - MMK
        - MNT
        - MOP
        - MUR
        - MVR
        - MWK
        - MXN
        - MYR
        - MZN
        - NAD
        - NGN
        - NIO
        - NOK
        - NPR
        - NZD
        - OMR
        - PAB
        - PEN
        - PGK
        - PHP
        - PKR
        - PLN
        - PYG
        - QAR
        - RON
        - RSD
        - RUB
        - RWF
        - SAR
        - SBD
        - SCR
        - SEK
        - SGD
        - SHP
        - SLE
        - SOS
        - SRD
        - SSP
        - SVC
        - SZL
        - THB
        - TJS
        - TMT
        - TND
        - TOP
        - TRY
        - TTD
        - TWD
        - TZS
        - UAH
        - UGX
        - USD
        - UYU
        - UZS
        - VND
        - VUV
        - WST
        - XAF
        - XCD
        - XOF
        - XPF
        - YER
        - ZAR
        - ZMW
    ProductServicePaginationResponse:
      properties:
        data:
          items:
            $ref: '#/components/schemas/ProductServiceResponse'
          type: array
        next_pagination_token:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A token that can be sent in the `pagination_token` query parameter
            to get the next page of results, or `null` if there is no next page
            (i.e. you've reached the last page).
        prev_pagination_token:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A token that can be sent in the `pagination_token` query parameter
            to get the previous page of results, or `null` if there is no
            previous page (i.e. you've reached the first page).
      additionalProperties: false
      type: object
      required:
        - data
      description: A paginated list of products and services
    ErrorSchemaResponse:
      properties:
        error:
          $ref: '#/components/schemas/ErrorSchema'
      type: object
      required:
        - error
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
      type: object
    ProductServiceResponse:
      properties:
        id:
          type: string
          format: uuid
          description: Unique ID of the product.
        created_at:
          type: string
          format: date-time
          description: >-
            Time at which the product was created. Timestamps follow the ISO
            8601 standard.
        updated_at:
          type: string
          format: date-time
          description: >-
            Time at which the product was last updated. Timestamps follow the
            ISO 8601 standard.
        description:
          anyOf:
            - type: string
            - type: 'null'
          description: Description of the product.
        entity_id:
          type: string
          format: uuid
        entity_user_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
        external_reference:
          anyOf:
            - type: string
              maxLength: 255
              minLength: 1
            - type: 'null'
          description: >-
            A user-defined identifier of the product. For example, an internal
            product code or SKU (stock keeping unit). Client applications can
            use this field to map the products in Monite to an external product
            catalog.
          examples:
            - HT-1234-S-BL
            - SERVICE-67890
        ledger_account_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
        measure_unit_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          description: >-
            The unique ID reference of the unit used to measure the quantity of
            this product (e.g. items, meters, kilograms).
        name:
          type: string
          description: Name of the product.
        price:
          anyOf:
            - $ref: '#/components/schemas/Price'
            - type: 'null'
        smallest_amount:
          anyOf:
            - type: number
              maximum: 2147483647
              minimum: 0
            - type: 'null'
          description: The smallest amount allowed for this product.
        type:
          $ref: '#/components/schemas/ProductServiceTypeEnum'
          description: >-
            Specifies whether this offering is a product or service. This may
            affect the applicable tax rates.
          default: product
      type: object
      required:
        - id
        - created_at
        - updated_at
        - entity_id
        - name
    ErrorSchema:
      properties:
        message:
          type: string
      type: object
      required:
        - message
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
        msg:
          type: string
        type:
          type: string
      type: object
      required:
        - loc
        - msg
        - type
    Price:
      properties:
        currency:
          $ref: '#/components/schemas/CurrencyEnum'
          description: The currency in which the price of the product is set.
        value:
          type: integer
          maximum: 9007199254740991
          minimum: 0
          description: The actual price of the product.
      additionalProperties: false
      type: object
      required:
        - currency
        - value
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````