{
  "openapi": "3.1.0",
  "info": {
    "title": "Aruba Airport Transfers assistant API",
    "version": "1.1.0",
    "description": "Public planning, authorized inquiries, encrypted drafts and guest-verified reservation assistance. Ordinary rides confirm after guest submission; four holiday dates need team confirmation. Read reservation status separately from fare readiness. No tool charges or refunds a card."
  },
  "servers": [
    {
      "url": "https://arubaairporttransfers.com/aat-site/api/v1"
    }
  ],
  "paths": {
    "/services.php": {
      "get": {
        "operationId": "get_transfer_services",
        "summary": "Read confirmed services, area IDs, policies, contact and limits before planning.",
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Services"
                }
              }
            }
          },
          "400": {
            "description": "Malformed JSON",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "Origin or authorization rejected",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "413": {
            "description": "Body too large",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "422": {
            "description": "Invalid input; correct or preview again as instructed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit; wait before retrying unchanged",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "503": {
            "description": "Outcome uncertain; retry original IDs, never duplicate",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/quote.php": {
      "post": {
        "operationId": "quote_transfer",
        "summary": "Calculate an authoritative one-way or round-trip quote with per-ride whole-dollar fees. Unknown routes, larger groups and special needs require team review.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "ride": {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "service": {
                        "type": "string",
                        "enum": [
                          "airport",
                          "island",
                          "driver"
                        ]
                      },
                      "direction": {
                        "type": "string",
                        "enum": [
                          "arrival",
                          "departure"
                        ]
                      },
                      "area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "pickup_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "dropoff_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "passengers": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 16
                      },
                      "checked_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "cabin_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "hours": {
                        "type": "integer",
                        "minimum": 2,
                        "maximum": 12
                      },
                      "date": {
                        "type": "string",
                        "format": "date"
                      },
                      "flight_date": {
                        "type": "string",
                        "format": "date"
                      },
                      "time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "departure_time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "flight": {
                        "type": "string",
                        "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                      },
                      "needs": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "child_seat",
                            "mobility_equipment",
                            "wheelchair_access",
                            "oversized_luggage",
                            "other"
                          ]
                        },
                        "uniqueItems": true,
                        "maxItems": 5
                      }
                    },
                    "required": [
                      "service",
                      "passengers"
                    ],
                    "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only."
                  },
                  "return_ride": {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "service": {
                        "type": "string",
                        "enum": [
                          "airport",
                          "island",
                          "driver"
                        ]
                      },
                      "direction": {
                        "type": "string",
                        "enum": [
                          "arrival",
                          "departure"
                        ]
                      },
                      "area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "pickup_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "dropoff_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "passengers": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 16
                      },
                      "checked_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "cabin_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "hours": {
                        "type": "integer",
                        "minimum": 2,
                        "maximum": 12
                      },
                      "date": {
                        "type": "string",
                        "format": "date"
                      },
                      "flight_date": {
                        "type": "string",
                        "format": "date"
                      },
                      "time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "departure_time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "flight": {
                        "type": "string",
                        "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                      },
                      "needs": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "child_seat",
                            "mobility_equipment",
                            "wheelchair_access",
                            "oversized_luggage",
                            "other"
                          ]
                        },
                        "uniqueItems": true,
                        "maxItems": 5
                      }
                    },
                    "required": [
                      "service",
                      "passengers"
                    ],
                    "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only.",
                    "title": "Optional return airport departure"
                  }
                },
                "required": [
                  "ride"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Quote"
                }
              }
            }
          },
          "400": {
            "description": "Malformed JSON",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "Origin or authorization rejected",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "413": {
            "description": "Body too large",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "422": {
            "description": "Invalid input; correct or preview again as instructed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit; wait before retrying unchanged",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "503": {
            "description": "Outcome uncertain; retry original IDs, never duplicate",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/assess.php": {
      "post": {
        "operationId": "assess_transfer_request",
        "summary": "Check route and requirements, identify manual review and missing details. Does not check live inventory or reserve anything.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "ride": {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "service": {
                        "type": "string",
                        "enum": [
                          "airport",
                          "island",
                          "driver"
                        ]
                      },
                      "direction": {
                        "type": "string",
                        "enum": [
                          "arrival",
                          "departure"
                        ]
                      },
                      "area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "pickup_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "dropoff_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "passengers": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 16
                      },
                      "checked_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "cabin_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "hours": {
                        "type": "integer",
                        "minimum": 2,
                        "maximum": 12
                      },
                      "date": {
                        "type": "string",
                        "format": "date"
                      },
                      "flight_date": {
                        "type": "string",
                        "format": "date"
                      },
                      "time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "departure_time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "flight": {
                        "type": "string",
                        "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                      },
                      "needs": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "child_seat",
                            "mobility_equipment",
                            "wheelchair_access",
                            "oversized_luggage",
                            "other"
                          ]
                        },
                        "uniqueItems": true,
                        "maxItems": 5
                      }
                    },
                    "required": [
                      "service",
                      "passengers"
                    ],
                    "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only."
                  },
                  "return_ride": {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "service": {
                        "type": "string",
                        "enum": [
                          "airport",
                          "island",
                          "driver"
                        ]
                      },
                      "direction": {
                        "type": "string",
                        "enum": [
                          "arrival",
                          "departure"
                        ]
                      },
                      "area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "pickup_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "dropoff_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "passengers": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 16
                      },
                      "checked_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "cabin_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "hours": {
                        "type": "integer",
                        "minimum": 2,
                        "maximum": 12
                      },
                      "date": {
                        "type": "string",
                        "format": "date"
                      },
                      "flight_date": {
                        "type": "string",
                        "format": "date"
                      },
                      "time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "departure_time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "flight": {
                        "type": "string",
                        "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                      },
                      "needs": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "child_seat",
                            "mobility_equipment",
                            "wheelchair_access",
                            "oversized_luggage",
                            "other"
                          ]
                        },
                        "uniqueItems": true,
                        "maxItems": 5
                      }
                    },
                    "required": [
                      "service",
                      "passengers"
                    ],
                    "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only.",
                    "title": "Optional return airport departure"
                  }
                },
                "required": [
                  "ride"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Quote"
                }
              }
            }
          },
          "400": {
            "description": "Malformed JSON",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "Origin or authorization rejected",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "413": {
            "description": "Body too large",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "422": {
            "description": "Invalid input; correct or preview again as instructed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit; wait before retrying unchanged",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "503": {
            "description": "Outcome uncertain; retry original IDs, never duplicate",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/handoff.php": {
      "post": {
        "operationId": "prepare_transfer_booking_link",
        "summary": "Prepare an editable guest review link. No booking, email, card save or charge. Send the link to the guest; never claim the ride is confirmed.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "ride": {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "service": {
                        "type": "string",
                        "enum": [
                          "airport",
                          "island",
                          "driver"
                        ]
                      },
                      "direction": {
                        "type": "string",
                        "enum": [
                          "arrival",
                          "departure"
                        ]
                      },
                      "area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "pickup_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "dropoff_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "passengers": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 16
                      },
                      "checked_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "cabin_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "hours": {
                        "type": "integer",
                        "minimum": 2,
                        "maximum": 12
                      },
                      "date": {
                        "type": "string",
                        "format": "date"
                      },
                      "flight_date": {
                        "type": "string",
                        "format": "date"
                      },
                      "time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "departure_time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "flight": {
                        "type": "string",
                        "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                      },
                      "needs": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "child_seat",
                            "mobility_equipment",
                            "wheelchair_access",
                            "oversized_luggage",
                            "other"
                          ]
                        },
                        "uniqueItems": true,
                        "maxItems": 5
                      }
                    },
                    "required": [
                      "service",
                      "passengers"
                    ],
                    "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only."
                  },
                  "return_ride": {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "service": {
                        "type": "string",
                        "enum": [
                          "airport",
                          "island",
                          "driver"
                        ]
                      },
                      "direction": {
                        "type": "string",
                        "enum": [
                          "arrival",
                          "departure"
                        ]
                      },
                      "area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "pickup_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "dropoff_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "passengers": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 16
                      },
                      "checked_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "cabin_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "hours": {
                        "type": "integer",
                        "minimum": 2,
                        "maximum": 12
                      },
                      "date": {
                        "type": "string",
                        "format": "date"
                      },
                      "flight_date": {
                        "type": "string",
                        "format": "date"
                      },
                      "time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "departure_time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "flight": {
                        "type": "string",
                        "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                      },
                      "needs": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "child_seat",
                            "mobility_equipment",
                            "wheelchair_access",
                            "oversized_luggage",
                            "other"
                          ]
                        },
                        "uniqueItems": true,
                        "maxItems": 5
                      }
                    },
                    "required": [
                      "service",
                      "passengers"
                    ],
                    "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only.",
                    "title": "Optional return airport departure"
                  }
                },
                "required": [
                  "ride"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Handoff"
                }
              }
            }
          },
          "400": {
            "description": "Malformed JSON",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "Origin or authorization rejected",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "413": {
            "description": "Body too large",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "422": {
            "description": "Invalid input; correct or preview again as instructed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit; wait before retrying unchanged",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "503": {
            "description": "Outcome uncertain; retry original IDs, never duplicate",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/question.php": {
      "post": {
        "operationId": "send_transfer_question",
        "summary": "With explicit customer permission, send a question and reply email to the transfer team. A receipt is mail-transport acceptance, not staff confirmation. Keep request_id and content unchanged on retries; do not resend with a new ID after uncertainty. No booking/change/payment. Never send card data.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "request_id": {
                    "type": "string",
                    "format": "uuid",
                    "description": "Random UUID v4. Preserve unchanged for retries."
                  },
                  "name": {
                    "type": "string",
                    "maxLength": 160
                  },
                  "reply_email": {
                    "type": "string",
                    "format": "email",
                    "maxLength": 254
                  },
                  "question": {
                    "type": "string",
                    "minLength": 5,
                    "maxLength": 4000
                  },
                  "customer_authorized": {
                    "type": "boolean",
                    "const": true,
                    "description": "Only after the customer explicitly approves this action and sharing its supplied details."
                  }
                },
                "required": [
                  "request_id",
                  "reply_email",
                  "question",
                  "customer_authorized"
                ],
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/QuestionResult"
                }
              }
            }
          },
          "400": {
            "description": "Malformed JSON",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "Origin or authorization rejected",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "413": {
            "description": "Body too large",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "422": {
            "description": "Invalid input; correct or preview again as instructed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit; wait before retrying unchanged",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "503": {
            "description": "Outcome uncertain; retry original IDs, never duplicate",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/operation.php": {
      "post": {
        "operationId": "transfer_private_operation",
        "summary": "Encrypted drafts, verified outcomes and guest-authorized single-reservation requests. Credentials are JSON body fields, never URL parameters.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "operation": {
                        "const": "create_draft"
                      },
                      "arguments": {
                        "type": "object",
                        "properties": {
                          "request_key": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{64}$"
                          },
                          "plan": {
                            "type": "object",
                            "additionalProperties": false,
                            "properties": {
                              "ride": {
                                "type": "object",
                                "additionalProperties": false,
                                "properties": {
                                  "service": {
                                    "type": "string",
                                    "enum": [
                                      "airport",
                                      "island",
                                      "driver"
                                    ]
                                  },
                                  "direction": {
                                    "type": "string",
                                    "enum": [
                                      "arrival",
                                      "departure"
                                    ]
                                  },
                                  "area": {
                                    "type": "string",
                                    "enum": [
                                      "north",
                                      "tierra",
                                      "airport",
                                      "south",
                                      "savaneta",
                                      "far-south",
                                      "other",
                                      "arikok"
                                    ]
                                  },
                                  "pickup_area": {
                                    "type": "string",
                                    "enum": [
                                      "north",
                                      "tierra",
                                      "airport",
                                      "south",
                                      "savaneta",
                                      "far-south",
                                      "other",
                                      "arikok"
                                    ]
                                  },
                                  "dropoff_area": {
                                    "type": "string",
                                    "enum": [
                                      "north",
                                      "tierra",
                                      "airport",
                                      "south",
                                      "savaneta",
                                      "far-south",
                                      "other",
                                      "arikok"
                                    ]
                                  },
                                  "passengers": {
                                    "type": "integer",
                                    "minimum": 1,
                                    "maximum": 16
                                  },
                                  "checked_bags": {
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 99
                                  },
                                  "cabin_bags": {
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 99
                                  },
                                  "hours": {
                                    "type": "integer",
                                    "minimum": 2,
                                    "maximum": 12
                                  },
                                  "date": {
                                    "type": "string",
                                    "format": "date"
                                  },
                                  "flight_date": {
                                    "type": "string",
                                    "format": "date"
                                  },
                                  "time": {
                                    "type": "string",
                                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                                  },
                                  "departure_time": {
                                    "type": "string",
                                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                                  },
                                  "flight": {
                                    "type": "string",
                                    "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                                  },
                                  "needs": {
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "enum": [
                                        "child_seat",
                                        "mobility_equipment",
                                        "wheelchair_access",
                                        "oversized_luggage",
                                        "other"
                                      ]
                                    },
                                    "uniqueItems": true,
                                    "maxItems": 5
                                  }
                                },
                                "required": [
                                  "service",
                                  "passengers"
                                ],
                                "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only."
                              },
                              "return_ride": {
                                "type": "object",
                                "additionalProperties": false,
                                "properties": {
                                  "service": {
                                    "type": "string",
                                    "enum": [
                                      "airport",
                                      "island",
                                      "driver"
                                    ]
                                  },
                                  "direction": {
                                    "type": "string",
                                    "enum": [
                                      "arrival",
                                      "departure"
                                    ]
                                  },
                                  "area": {
                                    "type": "string",
                                    "enum": [
                                      "north",
                                      "tierra",
                                      "airport",
                                      "south",
                                      "savaneta",
                                      "far-south",
                                      "other",
                                      "arikok"
                                    ]
                                  },
                                  "pickup_area": {
                                    "type": "string",
                                    "enum": [
                                      "north",
                                      "tierra",
                                      "airport",
                                      "south",
                                      "savaneta",
                                      "far-south",
                                      "other",
                                      "arikok"
                                    ]
                                  },
                                  "dropoff_area": {
                                    "type": "string",
                                    "enum": [
                                      "north",
                                      "tierra",
                                      "airport",
                                      "south",
                                      "savaneta",
                                      "far-south",
                                      "other",
                                      "arikok"
                                    ]
                                  },
                                  "passengers": {
                                    "type": "integer",
                                    "minimum": 1,
                                    "maximum": 16
                                  },
                                  "checked_bags": {
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 99
                                  },
                                  "cabin_bags": {
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 99
                                  },
                                  "hours": {
                                    "type": "integer",
                                    "minimum": 2,
                                    "maximum": 12
                                  },
                                  "date": {
                                    "type": "string",
                                    "format": "date"
                                  },
                                  "flight_date": {
                                    "type": "string",
                                    "format": "date"
                                  },
                                  "time": {
                                    "type": "string",
                                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                                  },
                                  "departure_time": {
                                    "type": "string",
                                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                                  },
                                  "flight": {
                                    "type": "string",
                                    "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                                  },
                                  "needs": {
                                    "type": "array",
                                    "items": {
                                      "type": "string",
                                      "enum": [
                                        "child_seat",
                                        "mobility_equipment",
                                        "wheelchair_access",
                                        "oversized_luggage",
                                        "other"
                                      ]
                                    },
                                    "uniqueItems": true,
                                    "maxItems": 5
                                  }
                                },
                                "required": [
                                  "service",
                                  "passengers"
                                ],
                                "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only.",
                                "title": "Optional return airport departure"
                              }
                            },
                            "required": [
                              "ride"
                            ]
                          },
                          "guest": {
                            "type": "object",
                            "properties": {
                              "first_name": {
                                "type": "string",
                                "maxLength": 80
                              },
                              "last_name": {
                                "type": "string",
                                "maxLength": 80
                              },
                              "email": {
                                "type": "string",
                                "maxLength": 254
                              },
                              "phone": {
                                "type": "string",
                                "maxLength": 80
                              },
                              "pickup_address": {
                                "type": "string",
                                "maxLength": 500
                              },
                              "dropoff_address": {
                                "type": "string",
                                "maxLength": 500
                              },
                              "return_pickup_address": {
                                "type": "string",
                                "maxLength": 500
                              },
                              "return_dropoff_address": {
                                "type": "string",
                                "maxLength": 500
                              }
                            },
                            "required": [],
                            "additionalProperties": false
                          },
                          "customer_authorized": {
                            "type": "boolean",
                            "const": true,
                            "description": "Only after the customer explicitly approves this action and sharing its supplied details."
                          }
                        },
                        "required": [
                          "request_key",
                          "plan",
                          "customer_authorized"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "operation",
                      "arguments"
                    ]
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "operation": {
                        "const": "outcome"
                      },
                      "arguments": {
                        "type": "object",
                        "properties": {
                          "operation_id": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{32}$"
                          },
                          "operation_token": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{64}$"
                          }
                        },
                        "required": [
                          "operation_id",
                          "operation_token"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "operation",
                      "arguments"
                    ]
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "operation": {
                        "const": "begin_access"
                      },
                      "arguments": {
                        "type": "object",
                        "properties": {
                          "request_key": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{64}$"
                          },
                          "booking_reference": {
                            "type": "string",
                            "maxLength": 40
                          },
                          "assistant_name": {
                            "type": "string",
                            "maxLength": 80
                          }
                        },
                        "required": [
                          "request_key",
                          "booking_reference"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "operation",
                      "arguments"
                    ]
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "operation": {
                        "const": "reservation"
                      },
                      "arguments": {
                        "type": "object",
                        "properties": {
                          "operation_id": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{32}$"
                          },
                          "operation_token": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{64}$"
                          }
                        },
                        "required": [
                          "operation_id",
                          "operation_token"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "operation",
                      "arguments"
                    ]
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "operation": {
                        "const": "preview_request"
                      },
                      "arguments": {
                        "type": "object",
                        "properties": {
                          "operation_id": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{32}$"
                          },
                          "operation_token": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{64}$"
                          },
                          "request_id": {
                            "type": "string",
                            "format": "uuid",
                            "description": "Random UUID v4. Preserve unchanged for retries."
                          },
                          "change": {
                            "type": "object",
                            "properties": {
                              "kind": {
                                "type": "string",
                                "enum": [
                                  "pickup",
                                  "schedule",
                                  "cancel"
                                ]
                              },
                              "leg": {
                                "type": "integer",
                                "enum": [
                                  1,
                                  2
                                ],
                                "description": "Explicit affected ride; read the authorized reservation first."
                              },
                              "note": {
                                "type": "string",
                                "maxLength": 1000
                              },
                              "pickup_address": {
                                "type": "string",
                                "maxLength": 500
                              },
                              "dropoff_address": {
                                "type": "string",
                                "maxLength": 500
                              },
                              "date": {
                                "type": "string",
                                "format": "date"
                              },
                              "time": {
                                "type": "string",
                                "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$"
                              },
                              "flight_date": {
                                "type": "string",
                                "format": "date"
                              },
                              "departure_time": {
                                "type": "string",
                                "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$"
                              },
                              "flight": {
                                "type": "string",
                                "maxLength": 30
                              }
                            },
                            "required": [
                              "kind",
                              "leg"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "required": [
                          "operation_id",
                          "operation_token",
                          "request_id",
                          "change"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "operation",
                      "arguments"
                    ]
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "operation": {
                        "const": "submit_request"
                      },
                      "arguments": {
                        "type": "object",
                        "properties": {
                          "operation_id": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{32}$"
                          },
                          "operation_token": {
                            "type": "string",
                            "pattern": "^[a-f0-9]{64}$"
                          },
                          "proposal_token": {
                            "type": "string",
                            "maxLength": 12000
                          },
                          "customer_authorized": {
                            "type": "boolean",
                            "const": true,
                            "description": "Only after the customer explicitly approves this action and sharing its supplied details."
                          }
                        },
                        "required": [
                          "operation_id",
                          "operation_token",
                          "proposal_token",
                          "customer_authorized"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "required": [
                      "operation",
                      "arguments"
                    ]
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationResult"
                }
              }
            }
          },
          "400": {
            "description": "Malformed JSON",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "Origin or authorization rejected",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "413": {
            "description": "Body too large",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "422": {
            "description": "Invalid input; correct or preview again as instructed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit; wait before retrying unchanged",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "503": {
            "description": "Outcome uncertain; retry original IDs, never duplicate",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Quote": {
        "type": "object",
        "properties": {
          "api_version": {
            "type": "string"
          },
          "pricing_version": {
            "type": "string"
          },
          "quoted_at": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "type": "string",
            "format": "uri"
          },
          "plan": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "ride": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "service": {
                    "type": "string",
                    "enum": [
                      "airport",
                      "island",
                      "driver"
                    ]
                  },
                  "direction": {
                    "type": "string",
                    "enum": [
                      "arrival",
                      "departure"
                    ]
                  },
                  "area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "pickup_area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "dropoff_area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "passengers": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 16
                  },
                  "checked_bags": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 99
                  },
                  "cabin_bags": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 99
                  },
                  "hours": {
                    "type": "integer",
                    "minimum": 2,
                    "maximum": 12
                  },
                  "date": {
                    "type": "string",
                    "format": "date"
                  },
                  "flight_date": {
                    "type": "string",
                    "format": "date"
                  },
                  "time": {
                    "type": "string",
                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                  },
                  "departure_time": {
                    "type": "string",
                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                  },
                  "flight": {
                    "type": "string",
                    "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                  },
                  "needs": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "child_seat",
                        "mobility_equipment",
                        "wheelchair_access",
                        "oversized_luggage",
                        "other"
                      ]
                    },
                    "uniqueItems": true,
                    "maxItems": 5
                  }
                },
                "required": [
                  "service",
                  "passengers"
                ],
                "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only."
              },
              "return_ride": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "service": {
                    "type": "string",
                    "enum": [
                      "airport",
                      "island",
                      "driver"
                    ]
                  },
                  "direction": {
                    "type": "string",
                    "enum": [
                      "arrival",
                      "departure"
                    ]
                  },
                  "area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "pickup_area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "dropoff_area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "passengers": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 16
                  },
                  "checked_bags": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 99
                  },
                  "cabin_bags": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 99
                  },
                  "hours": {
                    "type": "integer",
                    "minimum": 2,
                    "maximum": 12
                  },
                  "date": {
                    "type": "string",
                    "format": "date"
                  },
                  "flight_date": {
                    "type": "string",
                    "format": "date"
                  },
                  "time": {
                    "type": "string",
                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                  },
                  "departure_time": {
                    "type": "string",
                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                  },
                  "flight": {
                    "type": "string",
                    "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                  },
                  "needs": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "child_seat",
                        "mobility_equipment",
                        "wheelchair_access",
                        "oversized_luggage",
                        "other"
                      ]
                    },
                    "uniqueItems": true,
                    "maxItems": 5
                  }
                },
                "required": [
                  "service",
                  "passengers"
                ],
                "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only.",
                "title": "Optional return airport departure"
              }
            },
            "required": [
              "ride"
            ]
          },
          "quote": {
            "type": "object",
            "properties": {
              "state": {
                "enum": [
                  "priced",
                  "review",
                  "unavailable"
                ]
              },
              "subtotal": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "fee": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "total": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "currency": {
                "const": "USD"
              },
              "version": {
                "type": "string"
              },
              "reasons": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "rides": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "state": {
                      "enum": [
                        "priced",
                        "review",
                        "unavailable"
                      ]
                    },
                    "subtotal": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0
                    },
                    "fee": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0
                    },
                    "total": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0
                    },
                    "currency": {
                      "const": "USD"
                    },
                    "version": {
                      "type": "string"
                    },
                    "reasons": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "required": [
                    "state"
                  ]
                }
              }
            },
            "required": [
              "state"
            ]
          },
          "status": {
            "enum": [
              "quote_only",
              "team_review_required",
              "unavailable"
            ]
          },
          "money_unit": {
            "const": "whole_USD"
          },
          "timezone": {
            "const": "America/Aruba"
          },
          "schedule_validated": {
            "type": "boolean"
          },
          "availability_checked": {
            "const": false
          },
          "vehicle_fit_confirmed": {
            "const": false
          },
          "booking_created": {
            "const": false
          },
          "request_submitted": {
            "const": false
          },
          "amount_charged": {
            "const": 0
          },
          "missing_before_request": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "next_step": {
            "type": "string"
          },
          "cautions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "recheck_price_at_booking": {
            "const": true
          }
        },
        "required": [
          "plan",
          "quote",
          "status",
          "booking_created",
          "request_submitted"
        ]
      },
      "Handoff": {
        "type": "object",
        "properties": {
          "api_version": {
            "type": "string"
          },
          "pricing_version": {
            "type": "string"
          },
          "quoted_at": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "type": "string",
            "format": "uri"
          },
          "plan": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "ride": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "service": {
                    "type": "string",
                    "enum": [
                      "airport",
                      "island",
                      "driver"
                    ]
                  },
                  "direction": {
                    "type": "string",
                    "enum": [
                      "arrival",
                      "departure"
                    ]
                  },
                  "area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "pickup_area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "dropoff_area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "passengers": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 16
                  },
                  "checked_bags": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 99
                  },
                  "cabin_bags": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 99
                  },
                  "hours": {
                    "type": "integer",
                    "minimum": 2,
                    "maximum": 12
                  },
                  "date": {
                    "type": "string",
                    "format": "date"
                  },
                  "flight_date": {
                    "type": "string",
                    "format": "date"
                  },
                  "time": {
                    "type": "string",
                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                  },
                  "departure_time": {
                    "type": "string",
                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                  },
                  "flight": {
                    "type": "string",
                    "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                  },
                  "needs": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "child_seat",
                        "mobility_equipment",
                        "wheelchair_access",
                        "oversized_luggage",
                        "other"
                      ]
                    },
                    "uniqueItems": true,
                    "maxItems": 5
                  }
                },
                "required": [
                  "service",
                  "passengers"
                ],
                "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only."
              },
              "return_ride": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "service": {
                    "type": "string",
                    "enum": [
                      "airport",
                      "island",
                      "driver"
                    ]
                  },
                  "direction": {
                    "type": "string",
                    "enum": [
                      "arrival",
                      "departure"
                    ]
                  },
                  "area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "pickup_area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "dropoff_area": {
                    "type": "string",
                    "enum": [
                      "north",
                      "tierra",
                      "airport",
                      "south",
                      "savaneta",
                      "far-south",
                      "other",
                      "arikok"
                    ]
                  },
                  "passengers": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 16
                  },
                  "checked_bags": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 99
                  },
                  "cabin_bags": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 99
                  },
                  "hours": {
                    "type": "integer",
                    "minimum": 2,
                    "maximum": 12
                  },
                  "date": {
                    "type": "string",
                    "format": "date"
                  },
                  "flight_date": {
                    "type": "string",
                    "format": "date"
                  },
                  "time": {
                    "type": "string",
                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                  },
                  "departure_time": {
                    "type": "string",
                    "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                    "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                  },
                  "flight": {
                    "type": "string",
                    "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                  },
                  "needs": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "child_seat",
                        "mobility_equipment",
                        "wheelchair_access",
                        "oversized_luggage",
                        "other"
                      ]
                    },
                    "uniqueItems": true,
                    "maxItems": 5
                  }
                },
                "required": [
                  "service",
                  "passengers"
                ],
                "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only.",
                "title": "Optional return airport departure"
              }
            },
            "required": [
              "ride"
            ]
          },
          "quote": {
            "type": "object",
            "properties": {
              "state": {
                "enum": [
                  "priced",
                  "review",
                  "unavailable"
                ]
              },
              "subtotal": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "fee": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "total": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "currency": {
                "const": "USD"
              },
              "version": {
                "type": "string"
              },
              "reasons": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "rides": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "state": {
                      "enum": [
                        "priced",
                        "review",
                        "unavailable"
                      ]
                    },
                    "subtotal": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0
                    },
                    "fee": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0
                    },
                    "total": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0
                    },
                    "currency": {
                      "const": "USD"
                    },
                    "version": {
                      "type": "string"
                    },
                    "reasons": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "required": [
                    "state"
                  ]
                }
              }
            },
            "required": [
              "state"
            ]
          },
          "status": {
            "enum": [
              "quote_only",
              "team_review_required",
              "unavailable"
            ]
          },
          "money_unit": {
            "const": "whole_USD"
          },
          "timezone": {
            "const": "America/Aruba"
          },
          "schedule_validated": {
            "type": "boolean"
          },
          "availability_checked": {
            "const": false
          },
          "vehicle_fit_confirmed": {
            "const": false
          },
          "booking_created": {
            "const": false
          },
          "request_submitted": {
            "const": false
          },
          "amount_charged": {
            "const": 0
          },
          "missing_before_request": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "next_step": {
            "type": "string"
          },
          "cautions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "recheck_price_at_booking": {
            "const": true
          },
          "handoff": {
            "type": [
              "object",
              "null"
            ],
            "properties": {
              "url": {
                "type": "string",
                "format": "uri"
              },
              "status": {
                "const": "guest_review_required"
              },
              "creates_booking": {
                "const": false
              },
              "expires_at": {
                "type": "null"
              },
              "note": {
                "type": "string"
              }
            }
          }
        },
        "required": [
          "plan",
          "quote",
          "status",
          "booking_created",
          "request_submitted"
        ]
      },
      "Price": {
        "type": "object",
        "properties": {
          "state": {
            "enum": [
              "priced",
              "review",
              "unavailable"
            ]
          },
          "subtotal": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0
          },
          "fee": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0
          },
          "total": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0
          },
          "currency": {
            "const": "USD"
          },
          "version": {
            "type": "string"
          },
          "reasons": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "rides": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "state": {
                  "enum": [
                    "priced",
                    "review",
                    "unavailable"
                  ]
                },
                "subtotal": {
                  "type": [
                    "integer",
                    "null"
                  ],
                  "minimum": 0
                },
                "fee": {
                  "type": [
                    "integer",
                    "null"
                  ],
                  "minimum": 0
                },
                "total": {
                  "type": [
                    "integer",
                    "null"
                  ],
                  "minimum": 0
                },
                "currency": {
                  "const": "USD"
                },
                "version": {
                  "type": "string"
                },
                "reasons": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              },
              "required": [
                "state"
              ]
            }
          }
        },
        "required": [
          "state"
        ]
      },
      "Error": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "http_status": {
            "type": "integer"
          },
          "retry_after_seconds": {
            "type": "integer"
          }
        }
      },
      "QuestionResult": {
        "type": "object",
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "status": {
            "enum": [
              "received",
              "invalid_question",
              "request_conflict",
              "delivery_uncertain",
              "temporarily_unavailable",
              "busy",
              "rate_limited",
              "verification_required"
            ]
          },
          "reference": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "booking_created": {
            "const": false
          },
          "retry_after_seconds": {
            "type": "integer"
          }
        },
        "required": [
          "ok",
          "status",
          "message",
          "booking_created"
        ]
      },
      "OperationResult": {
        "type": "object",
        "properties": {
          "status": {
            "enum": [
              "customer_approval_required",
              "authorized",
              "processing",
              "action_required",
              "test_completed",
              "awaiting_quote",
              "awaiting_card",
              "awaiting_confirmation",
              "confirmed",
              "declined",
              "cancelled",
              "review_required",
              "pending",
              "completed",
              "rejected"
            ]
          },
          "operation_id": {
            "type": "string"
          },
          "operation_token": {
            "type": "string"
          },
          "customer_approval_url": {
            "type": "string",
            "format": "uri"
          },
          "expires_at": {
            "type": "string",
            "format": "date-time"
          },
          "request_submitted": {
            "type": "boolean"
          },
          "booking_created": {
            "type": "boolean"
          },
          "action_completed": {
            "type": "boolean"
          },
          "booking_reference": {
            "type": "string"
          },
          "total": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0
          },
          "currency": {
            "const": "USD"
          },
          "request_id": {
            "type": "string"
          },
          "proposal_token": {
            "type": "string"
          },
          "next_step": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "quote": {
            "type": "object",
            "properties": {
              "api_version": {
                "type": "string"
              },
              "pricing_version": {
                "type": "string"
              },
              "quoted_at": {
                "type": "string",
                "format": "date-time"
              },
              "source": {
                "type": "string",
                "format": "uri"
              },
              "plan": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "ride": {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "service": {
                        "type": "string",
                        "enum": [
                          "airport",
                          "island",
                          "driver"
                        ]
                      },
                      "direction": {
                        "type": "string",
                        "enum": [
                          "arrival",
                          "departure"
                        ]
                      },
                      "area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "pickup_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "dropoff_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "passengers": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 16
                      },
                      "checked_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "cabin_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "hours": {
                        "type": "integer",
                        "minimum": 2,
                        "maximum": 12
                      },
                      "date": {
                        "type": "string",
                        "format": "date"
                      },
                      "flight_date": {
                        "type": "string",
                        "format": "date"
                      },
                      "time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "departure_time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "flight": {
                        "type": "string",
                        "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                      },
                      "needs": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "child_seat",
                            "mobility_equipment",
                            "wheelchair_access",
                            "oversized_luggage",
                            "other"
                          ]
                        },
                        "uniqueItems": true,
                        "maxItems": 5
                      }
                    },
                    "required": [
                      "service",
                      "passengers"
                    ],
                    "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only."
                  },
                  "return_ride": {
                    "type": "object",
                    "additionalProperties": false,
                    "properties": {
                      "service": {
                        "type": "string",
                        "enum": [
                          "airport",
                          "island",
                          "driver"
                        ]
                      },
                      "direction": {
                        "type": "string",
                        "enum": [
                          "arrival",
                          "departure"
                        ]
                      },
                      "area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "pickup_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "dropoff_area": {
                        "type": "string",
                        "enum": [
                          "north",
                          "tierra",
                          "airport",
                          "south",
                          "savaneta",
                          "far-south",
                          "other",
                          "arikok"
                        ]
                      },
                      "passengers": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 16
                      },
                      "checked_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "cabin_bags": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 99
                      },
                      "hours": {
                        "type": "integer",
                        "minimum": 2,
                        "maximum": 12
                      },
                      "date": {
                        "type": "string",
                        "format": "date"
                      },
                      "flight_date": {
                        "type": "string",
                        "format": "date"
                      },
                      "time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "departure_time": {
                        "type": "string",
                        "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                        "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                      },
                      "flight": {
                        "type": "string",
                        "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                      },
                      "needs": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "enum": [
                            "child_seat",
                            "mobility_equipment",
                            "wheelchair_access",
                            "oversized_luggage",
                            "other"
                          ]
                        },
                        "uniqueItems": true,
                        "maxItems": 5
                      }
                    },
                    "required": [
                      "service",
                      "passengers"
                    ],
                    "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only.",
                    "title": "Optional return airport departure"
                  }
                },
                "required": [
                  "ride"
                ]
              },
              "quote": {
                "type": "object",
                "properties": {
                  "state": {
                    "enum": [
                      "priced",
                      "review",
                      "unavailable"
                    ]
                  },
                  "subtotal": {
                    "type": [
                      "integer",
                      "null"
                    ],
                    "minimum": 0
                  },
                  "fee": {
                    "type": [
                      "integer",
                      "null"
                    ],
                    "minimum": 0
                  },
                  "total": {
                    "type": [
                      "integer",
                      "null"
                    ],
                    "minimum": 0
                  },
                  "currency": {
                    "const": "USD"
                  },
                  "version": {
                    "type": "string"
                  },
                  "reasons": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "rides": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "state": {
                          "enum": [
                            "priced",
                            "review",
                            "unavailable"
                          ]
                        },
                        "subtotal": {
                          "type": [
                            "integer",
                            "null"
                          ],
                          "minimum": 0
                        },
                        "fee": {
                          "type": [
                            "integer",
                            "null"
                          ],
                          "minimum": 0
                        },
                        "total": {
                          "type": [
                            "integer",
                            "null"
                          ],
                          "minimum": 0
                        },
                        "currency": {
                          "const": "USD"
                        },
                        "version": {
                          "type": "string"
                        },
                        "reasons": {
                          "type": "array",
                          "items": {
                            "type": "string"
                          }
                        }
                      },
                      "required": [
                        "state"
                      ]
                    }
                  }
                },
                "required": [
                  "state"
                ]
              },
              "status": {
                "enum": [
                  "quote_only",
                  "team_review_required",
                  "unavailable"
                ]
              },
              "money_unit": {
                "const": "whole_USD"
              },
              "timezone": {
                "const": "America/Aruba"
              },
              "schedule_validated": {
                "type": "boolean"
              },
              "availability_checked": {
                "const": false
              },
              "vehicle_fit_confirmed": {
                "const": false
              },
              "booking_created": {
                "const": false
              },
              "request_submitted": {
                "const": false
              },
              "amount_charged": {
                "const": 0
              },
              "missing_before_request": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "next_step": {
                "type": "string"
              },
              "cautions": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "recheck_price_at_booking": {
                "const": true
              }
            },
            "required": [
              "plan",
              "quote",
              "status",
              "booking_created",
              "request_submitted"
            ]
          },
          "reservation": {
            "type": "object",
            "properties": {
              "booking_id": {
                "type": "string"
              },
              "booking_reference": {
                "type": "string"
              },
              "stage": {
                "type": "string"
              },
              "total": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "currency": {
                "const": "USD"
              },
              "confirmation_status": {
                "type": "string"
              },
              "version": {
                "type": "string"
              },
              "rides": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "leg": {
                      "type": "integer",
                      "enum": [
                        1,
                        2
                      ]
                    },
                    "ride": {
                      "type": "object",
                      "properties": {
                        "service": {
                          "type": "string",
                          "enum": [
                            "airport",
                            "island",
                            "driver"
                          ]
                        },
                        "direction": {
                          "type": "string",
                          "enum": [
                            "arrival",
                            "departure"
                          ]
                        },
                        "area": {
                          "type": "string",
                          "enum": [
                            "north",
                            "tierra",
                            "airport",
                            "south",
                            "savaneta",
                            "far-south",
                            "other",
                            "arikok"
                          ]
                        },
                        "pickup_area": {
                          "type": "string",
                          "enum": [
                            "north",
                            "tierra",
                            "airport",
                            "south",
                            "savaneta",
                            "far-south",
                            "other",
                            "arikok"
                          ]
                        },
                        "dropoff_area": {
                          "type": "string",
                          "enum": [
                            "north",
                            "tierra",
                            "airport",
                            "south",
                            "savaneta",
                            "far-south",
                            "other",
                            "arikok"
                          ]
                        },
                        "passengers": {
                          "type": "integer",
                          "minimum": 1,
                          "maximum": 16
                        },
                        "checked_bags": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 99
                        },
                        "cabin_bags": {
                          "type": "integer",
                          "minimum": 0,
                          "maximum": 99
                        },
                        "hours": {
                          "type": "integer",
                          "minimum": 2,
                          "maximum": 12
                        },
                        "date": {
                          "type": "string",
                          "format": "date"
                        },
                        "flight_date": {
                          "type": "string",
                          "format": "date"
                        },
                        "time": {
                          "type": "string",
                          "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                          "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                        },
                        "departure_time": {
                          "type": "string",
                          "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                          "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                        },
                        "flight": {
                          "type": "string",
                          "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                        },
                        "needs": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "enum": [
                              "child_seat",
                              "mobility_equipment",
                              "wheelchair_access",
                              "oversized_luggage",
                              "other"
                            ]
                          },
                          "uniqueItems": true,
                          "maxItems": 5
                        },
                        "from": {
                          "type": "string"
                        },
                        "to": {
                          "type": "string"
                        },
                        "pickup_address": {
                          "type": "string"
                        },
                        "dropoff_address": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "service",
                        "date",
                        "time",
                        "passengers"
                      ]
                    },
                    "status": {
                      "enum": [
                        "awaiting_quote",
                        "awaiting_confirmation",
                        "confirmed",
                        "unavailable",
                        "cancelled",
                        "completed"
                      ]
                    },
                    "total": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0
                    },
                    "pickup_instructions": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "leg",
                    "status",
                    "total"
                  ]
                }
              },
              "requests": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "request_id": {
                      "type": "string"
                    },
                    "kind": {
                      "enum": [
                        "pickup",
                        "schedule",
                        "cancel"
                      ]
                    },
                    "change": {
                      "type": "object",
                      "properties": {
                        "kind": {
                          "type": "string",
                          "enum": [
                            "pickup",
                            "schedule",
                            "cancel"
                          ]
                        },
                        "leg": {
                          "type": "integer",
                          "enum": [
                            1,
                            2
                          ],
                          "description": "Explicit affected ride; read the authorized reservation first."
                        },
                        "note": {
                          "type": "string",
                          "maxLength": 1000
                        },
                        "pickup_address": {
                          "type": "string",
                          "maxLength": 500
                        },
                        "dropoff_address": {
                          "type": "string",
                          "maxLength": 500
                        },
                        "date": {
                          "type": "string",
                          "format": "date"
                        },
                        "time": {
                          "type": "string",
                          "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$"
                        },
                        "flight_date": {
                          "type": "string",
                          "format": "date"
                        },
                        "departure_time": {
                          "type": "string",
                          "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$"
                        },
                        "flight": {
                          "type": "string",
                          "maxLength": 30
                        }
                      },
                      "required": [
                        "kind",
                        "leg"
                      ],
                      "additionalProperties": false
                    },
                    "status": {
                      "enum": [
                        "pending",
                        "completed",
                        "rejected"
                      ]
                    },
                    "received_at": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "resolved_at": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "format": "date-time"
                    },
                    "message": {
                      "type": [
                        "string",
                        "null"
                      ]
                    }
                  }
                }
              }
            },
            "required": [
              "booking_id",
              "booking_reference",
              "version",
              "rides",
              "requests"
            ]
          },
          "policy": {
            "type": "object",
            "properties": {
              "leg": {
                "type": "integer",
                "enum": [
                  1,
                  2
                ]
              },
              "free_change_cancel_deadline": {
                "type": "string",
                "format": "date-time"
              },
              "before_deadline": {
                "type": "boolean"
              },
              "currency": {
                "const": "USD"
              },
              "ride_total": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "standard_cancellation_charge": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "change_fee": {
                "type": [
                  "integer",
                  "null"
                ],
                "minimum": 0
              },
              "request_only": {
                "const": true
              },
              "phone": {
                "type": "string"
              },
              "phone_hours": {
                "type": "string"
              },
              "explanation": {
                "type": "string"
              }
            }
          },
          "change": {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "enum": [
                  "pickup",
                  "schedule",
                  "cancel"
                ]
              },
              "leg": {
                "type": "integer",
                "enum": [
                  1,
                  2
                ],
                "description": "Explicit affected ride; read the authorized reservation first."
              },
              "note": {
                "type": "string",
                "maxLength": 1000
              },
              "pickup_address": {
                "type": "string",
                "maxLength": 500
              },
              "dropoff_address": {
                "type": "string",
                "maxLength": 500
              },
              "date": {
                "type": "string",
                "format": "date"
              },
              "time": {
                "type": "string",
                "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$"
              },
              "flight_date": {
                "type": "string",
                "format": "date"
              },
              "departure_time": {
                "type": "string",
                "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$"
              },
              "flight": {
                "type": "string",
                "maxLength": 30
              }
            },
            "required": [
              "kind",
              "leg"
            ],
            "additionalProperties": false
          },
          "rides": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "leg": {
                  "type": "integer",
                  "enum": [
                    1,
                    2
                  ]
                },
                "ride": {
                  "type": "object",
                  "properties": {
                    "service": {
                      "type": "string",
                      "enum": [
                        "airport",
                        "island",
                        "driver"
                      ]
                    },
                    "direction": {
                      "type": "string",
                      "enum": [
                        "arrival",
                        "departure"
                      ]
                    },
                    "area": {
                      "type": "string",
                      "enum": [
                        "north",
                        "tierra",
                        "airport",
                        "south",
                        "savaneta",
                        "far-south",
                        "other",
                        "arikok"
                      ]
                    },
                    "pickup_area": {
                      "type": "string",
                      "enum": [
                        "north",
                        "tierra",
                        "airport",
                        "south",
                        "savaneta",
                        "far-south",
                        "other",
                        "arikok"
                      ]
                    },
                    "dropoff_area": {
                      "type": "string",
                      "enum": [
                        "north",
                        "tierra",
                        "airport",
                        "south",
                        "savaneta",
                        "far-south",
                        "other",
                        "arikok"
                      ]
                    },
                    "passengers": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 16
                    },
                    "checked_bags": {
                      "type": "integer",
                      "minimum": 0,
                      "maximum": 99
                    },
                    "cabin_bags": {
                      "type": "integer",
                      "minimum": 0,
                      "maximum": 99
                    },
                    "hours": {
                      "type": "integer",
                      "minimum": 2,
                      "maximum": 12
                    },
                    "date": {
                      "type": "string",
                      "format": "date"
                    },
                    "flight_date": {
                      "type": "string",
                      "format": "date"
                    },
                    "time": {
                      "type": "string",
                      "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                      "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                    },
                    "departure_time": {
                      "type": "string",
                      "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                      "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
                    },
                    "flight": {
                      "type": "string",
                      "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
                    },
                    "needs": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "child_seat",
                          "mobility_equipment",
                          "wheelchair_access",
                          "oversized_luggage",
                          "other"
                        ]
                      },
                      "uniqueItems": true,
                      "maxItems": 5
                    },
                    "from": {
                      "type": "string"
                    },
                    "to": {
                      "type": "string"
                    },
                    "pickup_address": {
                      "type": "string"
                    },
                    "dropoff_address": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "service",
                    "date",
                    "time",
                    "passengers"
                  ]
                },
                "status": {
                  "enum": [
                    "awaiting_quote",
                    "awaiting_confirmation",
                    "confirmed",
                    "unavailable",
                    "cancelled",
                    "completed"
                  ]
                },
                "total": {
                  "type": [
                    "integer",
                    "null"
                  ],
                  "minimum": 0
                },
                "pickup_instructions": {
                  "type": "string"
                }
              },
              "required": [
                "leg",
                "status",
                "total"
              ]
            }
          },
          "success": {
            "type": "boolean"
          },
          "confirmation_status": {
            "type": "string"
          },
          "price_pending": {
            "type": "boolean"
          },
          "replayed": {
            "type": "boolean"
          },
          "retrieved_at": {
            "type": "string",
            "format": "date-time"
          },
          "received_at": {
            "type": "string",
            "format": "date-time"
          },
          "amount_charged_by_this_flow": {
            "const": 0
          },
          "plan_may_have_been_edited_by_guest": {
            "type": "boolean"
          }
        },
        "required": [
          "status"
        ]
      },
      "Services": {
        "type": "object",
        "properties": {
          "api_version": {
            "type": "string"
          },
          "operator": {
            "type": "string"
          },
          "source": {
            "type": "string"
          },
          "currency": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          },
          "facts_checked": {
            "type": "string"
          },
          "services": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "directions": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "round_trip": {
                  "type": "string"
                },
                "area_ids": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "areas": {
            "type": "object",
            "properties": {
              "north": {
                "type": "string"
              },
              "tierra": {
                "type": "string"
              },
              "airport": {
                "type": "string"
              },
              "south": {
                "type": "string"
              },
              "savaneta": {
                "type": "string"
              },
              "far-south": {
                "type": "string"
              },
              "other": {
                "type": "string"
              },
              "arikok": {
                "type": "string"
              }
            }
          },
          "requirement_ids": {
            "type": "object",
            "properties": {
              "child_seat": {
                "type": "string"
              },
              "mobility_equipment": {
                "type": "string"
              },
              "wheelchair_access": {
                "type": "string"
              },
              "oversized_luggage": {
                "type": "string"
              },
              "other": {
                "type": "string"
              }
            }
          },
          "booking": {
            "type": "object",
            "properties": {
              "minimum_notice_hours": {
                "type": "number"
              },
              "availability": {
                "type": "string"
              },
              "confirmation": {
                "type": "string"
              },
              "driver_details": {
                "type": "string"
              },
              "policy": {
                "type": "string"
              }
            }
          },
          "pricing": {
            "type": "object",
            "properties": {
              "source": {
                "type": "string"
              },
              "fee": {
                "type": "string"
              },
              "gratuity": {
                "type": "string"
              },
              "unknown_routes": {
                "type": "string"
              },
              "large_groups": {
                "type": "string"
              }
            }
          },
          "contact": {
            "type": "object",
            "properties": {
              "phone": {
                "type": "string"
              },
              "phone_hours": {
                "type": "string"
              },
              "message_url": {
                "type": "string"
              },
              "question_tool": {
                "type": "string"
              },
              "permission_required": {
                "type": "boolean"
              }
            }
          },
          "knowledge_scope": {
            "type": "string"
          },
          "links": {
            "type": "object",
            "properties": {
              "documentation": {
                "type": "string"
              },
              "mcp": {
                "type": "string"
              },
              "openapi": {
                "type": "string"
              },
              "facts": {
                "type": "string"
              },
              "terms": {
                "type": "string"
              },
              "booking": {
                "type": "string"
              }
            }
          }
        }
      },
      "Plan": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "ride": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "service": {
                "type": "string",
                "enum": [
                  "airport",
                  "island",
                  "driver"
                ]
              },
              "direction": {
                "type": "string",
                "enum": [
                  "arrival",
                  "departure"
                ]
              },
              "area": {
                "type": "string",
                "enum": [
                  "north",
                  "tierra",
                  "airport",
                  "south",
                  "savaneta",
                  "far-south",
                  "other",
                  "arikok"
                ]
              },
              "pickup_area": {
                "type": "string",
                "enum": [
                  "north",
                  "tierra",
                  "airport",
                  "south",
                  "savaneta",
                  "far-south",
                  "other",
                  "arikok"
                ]
              },
              "dropoff_area": {
                "type": "string",
                "enum": [
                  "north",
                  "tierra",
                  "airport",
                  "south",
                  "savaneta",
                  "far-south",
                  "other",
                  "arikok"
                ]
              },
              "passengers": {
                "type": "integer",
                "minimum": 1,
                "maximum": 16
              },
              "checked_bags": {
                "type": "integer",
                "minimum": 0,
                "maximum": 99
              },
              "cabin_bags": {
                "type": "integer",
                "minimum": 0,
                "maximum": 99
              },
              "hours": {
                "type": "integer",
                "minimum": 2,
                "maximum": 12
              },
              "date": {
                "type": "string",
                "format": "date"
              },
              "flight_date": {
                "type": "string",
                "format": "date"
              },
              "time": {
                "type": "string",
                "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
              },
              "departure_time": {
                "type": "string",
                "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
              },
              "flight": {
                "type": "string",
                "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
              },
              "needs": {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "child_seat",
                    "mobility_equipment",
                    "wheelchair_access",
                    "oversized_luggage",
                    "other"
                  ]
                },
                "uniqueItems": true,
                "maxItems": 5
              }
            },
            "required": [
              "service",
              "passengers"
            ],
            "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only."
          },
          "return_ride": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
              "service": {
                "type": "string",
                "enum": [
                  "airport",
                  "island",
                  "driver"
                ]
              },
              "direction": {
                "type": "string",
                "enum": [
                  "arrival",
                  "departure"
                ]
              },
              "area": {
                "type": "string",
                "enum": [
                  "north",
                  "tierra",
                  "airport",
                  "south",
                  "savaneta",
                  "far-south",
                  "other",
                  "arikok"
                ]
              },
              "pickup_area": {
                "type": "string",
                "enum": [
                  "north",
                  "tierra",
                  "airport",
                  "south",
                  "savaneta",
                  "far-south",
                  "other",
                  "arikok"
                ]
              },
              "dropoff_area": {
                "type": "string",
                "enum": [
                  "north",
                  "tierra",
                  "airport",
                  "south",
                  "savaneta",
                  "far-south",
                  "other",
                  "arikok"
                ]
              },
              "passengers": {
                "type": "integer",
                "minimum": 1,
                "maximum": 16
              },
              "checked_bags": {
                "type": "integer",
                "minimum": 0,
                "maximum": 99
              },
              "cabin_bags": {
                "type": "integer",
                "minimum": 0,
                "maximum": 99
              },
              "hours": {
                "type": "integer",
                "minimum": 2,
                "maximum": 12
              },
              "date": {
                "type": "string",
                "format": "date"
              },
              "flight_date": {
                "type": "string",
                "format": "date"
              },
              "time": {
                "type": "string",
                "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
              },
              "departure_time": {
                "type": "string",
                "pattern": "^(?:[01][0-9]|2[0-3]):[0-5][0-9]$",
                "description": "Aruba local time. date/time are landing for arrivals, pickup for departures. flight_date/departure_time are the actual departing flight and may be on the next day."
              },
              "flight": {
                "type": "string",
                "pattern": "^[A-Z0-9]{2,3} ?[0-9]{1,4}[A-Z]?$"
              },
              "needs": {
                "type": "array",
                "items": {
                  "type": "string",
                  "enum": [
                    "child_seat",
                    "mobility_equipment",
                    "wheelchair_access",
                    "oversized_luggage",
                    "other"
                  ]
                },
                "uniqueItems": true,
                "maxItems": 5
              }
            },
            "required": [
              "service",
              "passengers"
            ],
            "description": "Airport requires direction and area. Island requires pickup_area and dropoff_area. Driver requires hours. Schedule, flight and bags may be omitted when unknown; never invent them. Known requirements must be included. Exact addresses and contact details are entered by the guest only.",
            "title": "Optional return airport departure"
          }
        },
        "required": [
          "ride"
        ]
      }
    }
  }
}
