openapi: 3.0.1
info:
  title: Sri Lanka Airport Transfers AI Agent API
  description: Public API for querying fixed airport transfer pricing, vehicle specs, and submitting booking leads across Sri Lanka.
  version: v1.0.0
servers:
  - url: https://www.srilanka-airport-transfers.com
paths:
  /_api/pricing:
    get:
      summary: Get fixed transfer fare estimates for a route
      operationId: getRoutePricing
      parameters:
        - name: pickup
          in: query
          required: true
          schema:
            type: string
          example: Colombo Airport (CMB)
        - name: destination
          in: query
          required: true
          schema:
            type: string
          example: Kandy
      responses:
        '200':
          description: Successful pricing calculation
          content:
            application/json:
              schema:
                type: object
                properties:
                  pickup:
                    type: string
                  destination:
                    type: string
                  distanceKm:
                    type: number
                  durationMins:
                    type: number
                  vehicles:
                    type: array
                    items:
                      type: object
                      properties:
                        category:
                          type: string
                        priceUsd:
                          type: number
                        passengers:
                          type: integer
  /_api/leads/capture:
    post:
      summary: Capture transfer booking intent or request quote
      operationId: captureBookingLead
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                stage:
                  type: string
                  enum: [quote_received, checkout_started, booking_completed]
                pickup:
                  type: object
                destination:
                  type: object
                customer:
                  type: object
                  properties:
                    name:
                      type: string
                    email:
                      type: string
                    phone:
                      type: string
      responses:
        '200':
          description: Lead captured successfully
