> ## 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.

# Books an appointment on Cal.com on behalf of a caller

> Books an appointment on Cal.com on behalf of a caller.



## OpenAPI

````yaml /api-reference/openapi.json post /api/v2/{firm}/book-appointment
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/v2/{firm}/book-appointment:
    post:
      tags:
        - Appointments
      summary: Books an appointment on Cal.com on behalf of a caller
      description: Books an appointment on Cal.com on behalf of a caller.
      operationId: post-firm-book-appointment
      parameters:
        - name: firm
          in: path
          required: true
          description: Firm slug in the URL (e.g. `brackman-law`).
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - eventTypeId
                - startTime
                - name
                - email
              properties:
                eventTypeId:
                  type: number
                  description: Cal.com event type ID.
                startTime:
                  type: string
                  description: ISO 8601 appointment start time.
                name:
                  type: string
                  description: Caller's full name.
                email:
                  type: string
                  description: Caller's email address.
                phone:
                  type: string
                  description: Caller's phone number.
                notes:
                  type: string
                  description: Case notes or reason for appointment.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
              example:
                booking_id: 12345
                uid: abc-xyz
                status: ACCEPTED
        '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

- [Webhook receiver for Cal.com booking events](/api-reference/appointments/webhook-receiver-for-calcom-booking-events.md)
- [Returns available appointment slots for the given firm within a 7-day window using the Cal.com API](/api-reference/appointments/returns-available-appointment-slots-for-the-given-firm-within-a-7-day-window-using-the-calcom-api.md)
- [Call webhooks](/guides/call-webhooks.md)
- [Appointments](/guides/appointments.md)
- [Book consultations on your calendar](/studio/calendar.md)
