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

# List companies

> List the parent companies belonging to the authenticated client, newest first.

**Authentication.** An API key (`x-dolfin-api-key`) **or** a JWT Bearer token. When your credential grants access to more than one client, select one with the `x-dolfin-client-id` header.



## OpenAPI

````yaml get /v1/companies
openapi: 3.1.1
info:
  title: Dolfin API
  description: >-
    Dolfin API for AR & AP. Each operation documents its accepted credentials
    under **Authentication** — typically an `x-dolfin-api-key` header (with
    `x-dolfin-organisation-id`) or a JWT Bearer token.
  version: v1
servers:
  - url: https://api.dolfinai.co
    description: Production
security: []
tags:
  - name: Users
  - name: TaxRates
  - name: Suppliers
  - name: Supplier Credit Notes
  - name: Bills
  - name: Payables
  - name: RecurringInvoices
  - name: Receivables
  - name: Purchase Orders
  - name: Products
  - name: Payments
  - name: Invoices
  - name: Organisations
  - name: Clients
  - name: MCP
  - name: Matching
  - name: Invoice Reminders
  - name: Industries
  - name: Gmail
  - name: Delivery Notes
  - name: Customers
  - name: Currencies
  - name: Credit Notes
  - name: Companies
  - name: BankPayments
  - name: Bank details
  - name: Auth
  - name: ApprovalPolicies
  - name: Agent
paths:
  /v1/companies:
    get:
      tags:
        - Companies
      summary: List companies
      description: >-
        List the parent companies belonging to the authenticated client, newest
        first.


        **Authentication.** An API key (`x-dolfin-api-key`) **or** a JWT Bearer
        token. When your credential grants access to more than one client,
        select one with the `x-dolfin-client-id` header.
      parameters:
        - name: Cursor
          in: query
          schema:
            type: string
        - name: Limit
          in: query
          schema:
            pattern: ^-?(?:0|[1-9]\d*)$
            type:
              - integer
              - string
            format: int32
            default: 20
        - name: Name
          in: query
          schema:
            type: string
        - name: x-dolfin-client-id
          in: header
          description: >-
            Target client. Required when your credential grants access to more
            than one client; omit when it resolves a single client.
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedResponseOfCompanyResponse'
        '400':
          description: Pagination.InvalidCursor — the cursor value is invalid
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
      security:
        - ApiKey: []
        - Bearer: []
components:
  schemas:
    PagedResponseOfCompanyResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/CompanyResponse'
        meta:
          $ref: '#/components/schemas/PagedResponseMeta'
    ProblemDetails:
      type: object
      properties:
        type:
          type:
            - 'null'
            - string
        title:
          type:
            - 'null'
            - string
        status:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
            - 'null'
            - integer
            - string
          format: int32
        detail:
          type:
            - 'null'
            - string
        instance:
          type:
            - 'null'
            - string
    CompanyResponse:
      required:
        - name
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
          description: Display name of the parent group, e.g. "Ozone Coffee".
        addressLine1:
          type:
            - 'null'
            - string
          description: >-
            Head office address. Used to recognise group-level bills, which are
            never routed automatically to an individual site.
        addressLine2:
          type:
            - 'null'
            - string
        city:
          type:
            - 'null'
            - string
        postalCode:
          type:
            - 'null'
            - string
        country:
          type:
            - 'null'
            - string
          description: ISO 3166-1 alpha-2 country code (e.g. GB, US, DE)
        contactEmail:
          type:
            - 'null'
            - string
          description: Contact address for notifications about bills awaiting routing.
        autoAssignThreshold:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
            - 'null'
            - number
            - string
          description: >-
            Overrides the client-wide automatic-routing score for this company
            only. Null means the client setting applies. Useful when one group's
            bills carry messier addresses than the rest.
          format: double
        autoAssignMargin:
          pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$
          type:
            - 'null'
            - number
            - string
          description: >-
            Overrides the client-wide automatic-routing margin for this company
            only. Null means the client setting applies.
          format: double
        createdAt:
          type: string
          format: date-time
        createdBy:
          type:
            - 'null'
            - string
          format: uuid
        updatedAt:
          type: string
          format: date-time
        updatedBy:
          type:
            - 'null'
            - string
          format: uuid
    PagedResponseMeta:
      type: object
      properties:
        cursors:
          $ref: '#/components/schemas/PagedResponseCursors'
    PagedResponseCursors:
      type: object
      properties:
        current:
          type:
            - 'null'
            - string
        next:
          type:
            - 'null'
            - string
        previous:
          type:
            - 'null'
            - string
  securitySchemes:
    ApiKey:
      type: apiKey
      description: >-
        An API key issued to your client. It carries the client's scope;
        org-scoped calls also require the `x-dolfin-organisation-id` header.
        Keys are created and revoked by a client administrator.
      name: x-dolfin-api-key
      in: header
    Bearer:
      type: http
      description: >-
        A session JWT obtained via the OAuth flow (`POST /auth/codes` → `POST
        /auth/exchange`). Its claims carry the caller's organisation and/or
        client scope.
      scheme: bearer
      bearerFormat: JWT

````