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

# List businesses

> 
        Returns a list of all active businesses registered in our platform by the partner with standardized pagination.

        **Supported Countries**: EU/UK, Nordic, and APAC markets
        - EU/UK/Nordic: GB, DE, FR, NL, ES, IT, IE, BE, AT, PT, SE, NO, DK, FI, IS
        - APAC: MY, SG

        **Supported Currencies**: GBP, EUR, USD, SEK, NOK, DKK, ISK, MYR, SGD
        



## OpenAPI

````yaml GET /v1/platform/businesses/
openapi: 3.0.3
info:
  title: Thredfi Accounting Platform API
  version: 1.0.0
  description: >-
    Comprehensive API for accounting, invoice management, open banking, and
    intelligence services.
servers: []
security: []
paths:
  /v1/platform/businesses/:
    get:
      tags:
        - Business Management
      summary: List businesses
      description: |2-

                Returns a list of all active businesses registered in our platform by the partner with standardized pagination.

                **Supported Countries**: EU/UK, Nordic, and APAC markets
                - EU/UK/Nordic: GB, DE, FR, NL, ES, IT, IE, BE, AT, PT, SE, NO, DK, FI, IS
                - APAC: MY, SG

                **Supported Currencies**: GBP, EUR, USD, SEK, NOK, DKK, ISK, MYR, SGD
                
      operationId: list_businesses
      parameters:
        - in: query
          name: country
          schema:
            type: string
          description: Filter by country code (case-insensitive, e.g., GB, DE, FR, MY, SG)
        - in: query
          name: entity_type
          schema:
            type: string
          description: >-
            Filter by entity type (case-insensitive). Valid values depend on
            business country. Examples: limited, gmbh, bv, sl, etc.
        - in: query
          name: is_archived
          schema:
            type: boolean
          description: Filter by archived status (true/false)
        - in: query
          name: legal_name
          schema:
            type: string
          description: Filter by legal name (case-insensitive partial match)
        - in: query
          name: page
          schema:
            type: integer
          description: 'Page number (default: 1)'
        - in: query
          name: page_size
          schema:
            type: integer
          description: 'Items per page (default: 20, max: 100)'
        - in: query
          name: search
          schema:
            type: string
          description: >-
            Search in business name, legal name, external ID, VAT number, and
            company number
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedBusinessListList'
              examples:
                UKLimitedCompany:
                  value:
                    count: 123
                    page_info:
                      total_count: 123
                      current_page: 1
                      total_pages: 7
                      page_size: 20
                    results:
                      - id: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                        external_id: customer-123
                        name: Acme Coffee Ltd
                        legal_name: Acme Coffee Limited
                        entity_type: limited
                        country: GB
                        province: Greater London
                        eu_nace_industry_code: '56.30'
                        is_active: true
                        activation_at: '2024-01-15T10:30:00Z'
                        created_at: '2024-01-15T10:30:00Z'
                        updated_at: '2024-03-20T14:22:00Z'
                        vat_number: GB123456789
                        company_number: '12345678'
                        tax_id: '1234567890'
                        base_currency: GBP
                  summary: UK Limited Company
          description: ''
      security:
        - PartnerJWT: []
        - BusinessScopedJWT: []
        - BasicAuth: []
        - BearerUnscoped: []
        - BearerBusinessScoped: []
components:
  schemas:
    PaginatedBusinessListList:
      type: object
      required:
        - count
        - page_info
        - results
      properties:
        count:
          type: integer
          example: 123
          description: Total number of items
        page_info:
          type: object
          example:
            total_count: 123
            current_page: 1
            total_pages: 7
            page_size: 20
          required:
            - total_count
            - current_page
            - total_pages
            - page_size
          properties:
            total_count:
              type: integer
              example: 123
              description: Total number of items (same as count)
            current_page:
              type: integer
              example: 1
              description: Current page number (1-indexed)
            total_pages:
              type: integer
              example: 7
              description: Total number of pages
            page_size:
              type: integer
              example: 20
              description: Number of items per page
        results:
          type: array
          items:
            $ref: '#/components/schemas/BusinessList'
    BusinessList:
      type: object
      description: Lightweight serializer for business list view
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
          description: Unique identifier for the business
        external_id:
          type: string
          readOnly: true
          description: Your unique identifier for this business
        name:
          type: string
          readOnly: true
          description: Display name for the business
        legal_name:
          type: string
          readOnly: true
          description: Legal registered name of the business
        entity_type:
          type: string
          readOnly: true
          description: Business entity type (e.g., 'limited', 'gmbh', 'bv')
        country:
          type: string
          readOnly: true
          description: ISO 3166-1 alpha-2 country code
        province:
          type: string
          readOnly: true
          description: Province or state within the country
        eu_nace_industry_code:
          type: string
          readOnly: true
          description: European NACE industry classification code
        is_active:
          type: boolean
          readOnly: true
          description: Whether the business is active (false if archived)
        activation_at:
          type: string
          format: date-time
          readOnly: true
          description: Date and time when the business was activated
        created_at:
          type: string
          format: date-time
          readOnly: true
          description: Date and time when the business was created
        updated_at:
          type: string
          format: date-time
          readOnly: true
          description: Date and time when the business was last updated
        vat_number:
          type: string
          readOnly: true
          description: EU VAT registration number
        company_number:
          type: string
          readOnly: true
          description: Company registration number (e.g., Companies House number for UK)
        tax_id:
          type: string
          readOnly: true
          description: Tax identification number (other than VAT)
        base_currency:
          type: string
          readOnly: true
          description: Base currency for accounting (ISO 4217 code)
      required:
        - activation_at
        - base_currency
        - company_number
        - country
        - created_at
        - entity_type
        - eu_nace_industry_code
        - external_id
        - id
        - is_active
        - legal_name
        - name
        - province
        - tax_id
        - updated_at
        - vat_number
  securitySchemes:
    PartnerJWT:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Partner-level JWT token (unscoped). Token payload includes `partner_id`.
        Business access is validated via partner ownership. Format: `Bearer
        <your-jwt-token>`


        **Use this for**: Multi-business operations where the business_id is
        specified in the URL and partner has access to multiple businesses.
    BusinessScopedJWT:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Business-scoped JWT token. Token payload includes `business_id` to
        automatically scope requests. Format: `Bearer <your-jwt-token>`


        **Use this for**: Business-specific operations where the business
        context is embedded in the token.
    BasicAuth:
      type: http
      scheme: basic
      description: >-
        Basic authentication for OAuth2 token endpoint. Use partner_uuid:api_key
        as username:password. Example: Authorization: Basic
        base64(partner_uuid:api_key)
    BearerUnscoped:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Partner (unscoped) JWT Bearer token. Obtain via POST
        /v1/platform/oauth2/token with Basic auth (partner_uuid:api_key). Use
        header: Authorization: Bearer {access_token}
    BearerBusinessScoped:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Business-scoped JWT Bearer token. Obtain via POST
        /v1/platform/{business_id}/oauth2/token/ using a partner Bearer token.
        Only valid for endpoints whose URL contains that business_id.

````