---
title: "List firm-assigned businesses"
method: GET
path: "/api/v1/financial-admin-portal/businesses/"
tags: ["Financial Portal"]
---

# List firm-assigned businesses

`GET /api/v1/financial-admin-portal/businesses/`

## Request

- Base URL: `https://docs.thredfi.com` (the document declares no server; this is the origin it was published from)
- URL: `https://docs.thredfi.com/api/v1/financial-admin-portal/businesses/`
- Auth: one of:
  - HTTP bearer
  - HTTP basic
  - HTTP bearer
  - HTTP bearer

Returns all businesses assigned to this financial administrator's firm

## Query parameters

- `page` integer
- `page_size` integer

## Response `200`

- PaginatedFinancialBusinessListList
  - `count` integer, required: Total number of items
  - `page_info` object, required
    - `total_count` integer, required: Total number of items (same as count)
    - `current_page` integer, required: Current page number (1-indexed)
    - `total_pages` integer, required: Total number of pages
    - `page_size` integer, required: Number of items per page
  - `results` FinancialBusinessList[], required
    - `id` string, uuid, required
    - `name` string, required
    - `legal_name` string, required
    - `external_id` string, required
    - `email` string, email, required
    - `country` 'GB' | 'DE' | 'FR' | 'NL' | 'ES' | 'IT' | 'IE' | 'BE' | 'AT' | 'PT' | 'SE' | 'NO' | 'DK' | 'FI' | 'IS' | 'MY' | 'SG', required: * `GB` - United Kingdom * `DE` - Germany * `FR` - France * `NL` - Netherlands * `ES` - Spain * `IT` - Italy * `IE` - Ireland * `BE` - Belgium * `AT` - Austria * `PT` - Portugal * `SE` - Sweden * `NO` - Norway * `DK` - Denmark * `FI` - Finland * `IS` - Iceland * `MY` - Malaysia * `SG` - Singapore
    - `base_currency` 'EUR' | 'GBP' | 'USD' | 'SEK' | 'NOK' | 'DKK' | 'ISK' | 'MYR' | 'SGD', required: * `EUR` - Euro * `GBP` - British Pound * `USD` - US Dollar * `SEK` - Swedish Krona * `NOK` - Norwegian Krone * `DKK` - Danish Krone * `ISK` - Icelandic Króna * `MYR` - Malaysian Ringgit * `SGD` - Singapore Dollar
    - `is_active` boolean, required
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
    - `assignment_details` object, nullable, required: Get assignment details for this business. N+1 Prevention: Uses prefetched `firm_assignment_list` attribute instead of querying the database for each business. The Prefetch in BusinessListView filters by: - financial_admin_partner (the admin's firm) - is_active=True This guarantees at most one assignment per business in the list. If no assignment exists (edge case: became inactive between query and serialization), we safely return None.

## Other responses

- `400`: Validation errors in request data
- `401`: Authentication required - missing or invalid API key
- `403`: Permission denied - insufficient privileges
- `404`: Resource not found
- `409`: Conflict - resource already exists or invalid state transition
- `422`: Unprocessable entity - business logic validation failed
- `500`: Internal server error

---

[API](https://skmtc.dev/thredfi/apis/thredfi-accounting-platform-api.md) - [All operations](https://skmtc.dev/thredfi/apis/thredfi-accounting-platform-api/llms.txt) - [OpenAPI document](https://skmtc.dev/thredfi/apis/thredfi-accounting-platform-api/revisions/0c1918254db3?raw)
