> ## 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 approval policies

> Retrieve a list of all approval policies with pagination.



## OpenAPI

````yaml /.tooling/schemas/rest/tags/product-finops.json get /finops/v1/approval-policies
openapi: 3.1.0
info:
  title: Tesouro Partner API
  version: '2025-06-23'
  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 VAT IDs
  - name: Counterpart addresses
  - name: Counterpart bank accounts
  - name: Counterpart contacts
  - name: Counterparts
  - name: Credit notes
  - name: Custom tax rates
  - name: Delivery notes
  - name: Documents
  - name: Entities
  - name: Entity users
  - name: Events
  - name: Files
  - name: Identity
  - name: Ledger accounts
  - name: Mail templates
  - name: Mailbox domains
  - name: Mailboxes
  - name: Measure units
  - name: OCR
  - name: Overdue reminders
  - name: PDF templates
  - 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: Products
  - name: Projects
  - name: Purchase orders
  - name: Receipts
  - name: Receivables
  - name: Recurrences
  - name: Tags
  - name: Text templates
  - name: Transactions
  - name: VAT rates
  - name: Webhook deliveries
  - name: Webhook subscriptions
paths:
  /finops/v1/approval-policies:
    get:
      tags:
        - Approval policies
      summary: Get approval policies
      description: Retrieve a list of all approval policies with pagination.
      operationId: get_approval-policies
      parameters:
        - required: true
          schema:
            type: string
            format: date
          example: '2025-06-23'
          name: x-finops-version
          in: header
        - required: false
          schema:
            type: string
            format: uuid
          name: process_id
          in: query
        - description: >-
            Sort order (ascending by default). Typically used together with the
            `sort` parameter.
          required: false
          schema:
            allOf:
              - $ref: '#/components/schemas/OrderEnum'
            default: asc
          name: order
          in: query
        - 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.
          required: false
          schema:
            type: integer
            maximum: 100
            minimum: 1
            default: 100
          name: limit
          in: query
        - 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.
          required: false
          schema:
            type: string
          name: pagination_token
          in: query
        - description: >-
            The field to sort the results by. Typically used together with the
            `order` parameter.
          required: false
          schema:
            allOf:
              - $ref: '#/components/schemas/ApprovalPolicyCursorFields'
          name: sort
          in: query
        - required: false
          schema:
            items:
              type: string
              format: uuid
            type: array
          name: id__in
          in: query
        - required: false
          schema:
            type: string
            enum:
              - active
              - pending
          name: status
          in: query
        - required: false
          schema:
            items:
              type: string
              enum:
                - active
                - pending
            type: array
          name: status__in
          in: query
        - required: false
          schema:
            type: string
          name: name
          in: query
        - required: false
          schema:
            type: string
          name: name__contains
          in: query
        - required: false
          schema:
            type: string
          name: name__ncontains
          in: query
        - required: false
          schema:
            type: string
            format: uuid
          name: created_by
          in: query
        - required: false
          schema:
            type: string
            format: date-time
          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: updated_at__gt
          in: query
        - required: false
          schema:
            type: string
            format: date-time
          name: updated_at__lt
          in: query
        - required: false
          schema:
            type: string
            format: date-time
          name: updated_at__gte
          in: query
        - required: false
          schema:
            type: string
            format: date-time
          name: updated_at__lte
          in: query
        - required: false
          schema:
            $ref: '#/components/schemas/ObjectType'
          name: object_type
          in: query
        - description: The ID of the entity that owns the requested resource.
          required: true
          schema:
            type: string
            format: uuid
            examples:
              - 9d2b4c8f-2087-4738-ba91-7359683c49a4
          name: x-organization-id
          in: header
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApprovalPolicyResourceList'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSchemaResponse'
        '409':
          description: Business logic error
          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
    ApprovalPolicyCursorFields:
      type: string
      enum:
        - created_at
        - updated_at
    ObjectType:
      type: string
      enum:
        - account
        - accounting_tax_rate
        - approval
        - approval_request
        - approval_policy
        - approval_policy_process
        - audit_trail
        - comment
        - cost_center
        - counterpart
        - counterpart_address
        - counterpart_bank_account
        - counterpart_contact_person
        - counterpart_partner_metadata
        - counterpart_tax_id
        - counterpart_vat_id
        - delivery_note
        - einvoicing
        - entity
        - entity_bank_account
        - entity_settings
        - entity_token
        - entity_user
        - entity_user_token
        - entity_vat_ids
        - export
        - ledger_account
        - mailbox
        - monitescript_process
        - ocr_task
        - onboarding
        - overdue_reminder
        - partner
        - partner_internal_config
        - partner_settings
        - partner_token
        - payable
        - payable_line_item
        - payables_credit_note
        - payables_purchase_order
        - payment
        - payment_intent
        - payment_link
        - payment_record
        - payment_reminder
        - person
        - product
        - project
        - receivable
        - reconciliation
        - recurrence
        - receipt
        - role
        - tag
        - todo_task
        - todo_task_mute
        - transaction
        - transaction_validation
        - webhook
        - workflow
        - workflow_pipeline
    ApprovalPolicyResourceList:
      properties:
        data:
          items:
            $ref: '#/components/schemas/ApprovalPolicyResource'
          type: array
        next_pagination_token:
          type: string
          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:
          type: string
          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
    ErrorSchemaResponse:
      properties:
        error:
          $ref: '#/components/schemas/ErrorSchema'
      type: object
      required:
        - error
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
      type: object
    ApprovalPolicyResource:
      properties:
        id:
          type: string
          format: uuid
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        created_by:
          type: string
          format: uuid
        description:
          type: string
          maxLength: 255
          description: A brief description of the approval policy.
        ends_at:
          type: string
          format: date-time
          description: >-
            The date and time (in the ISO 8601 format) when the approval policy
            stops being active and stops triggering approval workflows.If
            `ends_at` is provided in the request, then `starts_at` must also be
            provided and `ends_at` must be later than `starts_at`. The value
            will be converted to UTC.
        name:
          type: string
          maxLength: 255
          description: The name of the approval policy.
        object_type:
          allOf:
            - $ref: '#/components/schemas/ObjectType'
          description: The type of object this approval policy applies to.
        priority:
          type: integer
          maximum: 32767
          minimum: -32768
          description: >-
            The priority controls which approval policy takes precedence when a
            payable matches multiple approval policies. A higher value mean
            higher priority.
          default: 0
        script:
          items:
            anyOf:
              - type: boolean
              - type: number
                minimum: 1
              - type: string
              - items: {}
                type: array
              - type: object
          type: array
          description: >-
            A list of JSON objects that represents the approval policy script.
            The script contains the logic that determines whether an action
            should be sent to approval. This field is required, and it should
            contain at least one script object.
        starts_at:
          type: string
          format: date-time
          description: >-
            The date and time (in the ISO 8601 format) when the approval policy
            becomes active. Only payables submitted for approval during the
            policy's active period will trigger this policy. If omitted or
            `null`, the policy is effective immediately. The value will be
            converted to UTC.
        status:
          type: string
          enum:
            - active
            - pending
          description: The current status of the approval policy.
          example: active
        trigger:
          anyOf:
            - type: boolean
            - type: number
            - type: string
            - items: {}
              type: array
            - type: object
          description: >-
            A JSON object that represents the trigger for the approval policy.
            The trigger specifies the event that will trigger the policy to be
            evaluated.
          example: '{amount >= 1000}'
        updated_by:
          type: string
          format: uuid
      type: object
      required:
        - id
        - created_at
        - updated_at
        - created_by
        - name
        - object_type
        - script
        - status
    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
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````