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

# Lists contacts for a firm with optional search and pagination

> Lists contacts for a firm with optional search and pagination.



## OpenAPI

````yaml /api-reference/openapi.json get /api/contacts
openapi: 3.1.0
info:
  title: Lawtte API
  version: v2
  description: >-
    REST API behind the Lawtte dashboard: AI voice and chat calls, agent
    configuration, leads, campaigns, contacts, and automation workflows.
  contact:
    name: Lawtte support
    email: contact@lawtte.ai
    url: https://www.lawtte.ai
servers:
  - url: https://www.lawtte.ai
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Voice & Chat
    description: Manage AI voice calls and chat sessions powered by Donna AI.
  - name: Agent Config
    description: Read and update AI agent prompts, voices, and configurations.
  - name: Appointments
    description: Check availability and book appointments via Cal.com integration.
  - name: Webhooks
    description: Receive real-time events after calls end.
  - name: Leads
    description: Create, manage, and analyze leads captured by your AI agents.
  - name: Campaigns
    description: Create and launch outbound call campaigns to lists of leads.
  - name: Contacts
    description: >-
      Import and sync contacts from CSV, OpenPhone, RingCentral, and practice
      management systems.
  - name: Workflows
    description: >-
      Build and manage automation workflows using a visual node-based flow
      editor.
  - name: Utilities
    description: Helper endpoints for AI-powered data extraction and widget testing.
paths:
  /api/contacts:
    get:
      tags:
        - Contacts
      summary: Lists contacts for a firm with optional search and pagination
      description: Lists contacts for a firm with optional search and pagination.
      operationId: get-contacts
      parameters:
        - name: firmSlug
          in: query
          required: true
          description: Firm identifier.
          schema:
            type: string
        - name: search
          in: query
          required: false
          description: Search by name, phone, or email.
          schema:
            type: string
        - name: limit
          in: query
          required: false
          description: Results per page (default 50).
          schema:
            type: number
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
              example:
                - id: ...
                  name: John Smith
                  phone: +1...
                  email: ...
        '401':
          description: Missing or invalid credentials
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Lawtte API key or session token: `Authorization: Bearer <token>`.'

````

## Related topics

- [Lists ended calls for a specific firm with pagination support](/api-reference/voice-&-chat/lists-ended-calls-for-a-specific-firm-with-pagination-support.md)
- [Batch imports contacts from a CSV payload](/api-reference/contacts/batch-imports-contacts-from-a-csv-payload.md)
- [Syncs contacts from the firm's OpenPhone account](/api-reference/contacts/syncs-contacts-from-the-firms-openphone-account.md)
- [Syncs contacts from the firm's RingCentral account](/api-reference/contacts/syncs-contacts-from-the-firms-ringcentral-account.md)
- [Create your AI receptionist](/studio/create-your-receptionist.md)
