Skip to main content
Glama

Read an existing own booking

get_booking_status
Read-onlyIdempotent

Read the OAuth-selected booking's current stored state: booking/payment status and assignment flags. Choose this for “what is my booking's recorded state?”, get_booking_history for “what happened?”, or get_booking_payment_review for “open this booking's existing unpaid checkout”. get_offer_status instead recovers an original prepare_offer submission using its intake proof.

At the OAuth endpoint, omit bookingKey (arguments {}) to use the already-selected booking. If supplied, use its ID or visible bookingReference, never supplier offerKey or a URL fragment. The private app-session endpoint still requires an explicit bookingKey. For a fictional reference: {"bookingKey":"WEB-EXAMPLE"}. Changing this identifier cannot change OAuth selection; prepared offer results contain links rather than booking IDs.

Authority is checked each call. not_found denies access without proving absence; unavailable leaves state unverified. This read does not refresh providers: stored payment, assignment and completion flags are not fresh proof of payment, dispatch or fulfillment. No booking or payment action occurs.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bookingKeyNoOmit to use exactly the booking already selected by this OAuth connection. If supplied, use that same booking's ID or visible reference; another identifier cannot switch selection or grant access.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / bookingKey / description
      Previous value: -"Internal booking ID for the one selected booking. At the customer OAuth endpoint, its visible bookingReference is accepted too. Copy the same booking's bookingKey or bookingReference from an available get_offer_status/prepare_offer or authorized booking-read result. prepared returns links, not these IDs. The supplier offerKey is not a booking identifier; the identifier grants no access by itself."New value: +"Omit to use exactly the booking already selected by this OAuth connection. If supplied, use that same booking's ID or visible reference; another identifier cannot switch selection or grant access."
    • removedInput schema / required
      Removed value: -[
      -  "bookingKey"
      -]
  2. Changed2 schema fields changed
    • changedInput schema / properties / bookingKey / description
      Previous value: -"Internal booking ID for the one selected booking. At the customer OAuth endpoint, its visible bookingReference is accepted too. Use a value returned for that same booking; the identifier grants no access by itself."New value: +"Internal booking ID for the one selected booking. At the customer OAuth endpoint, its visible bookingReference is accepted too. Copy the same booking's bookingKey or bookingReference from an available get_offer_status/prepare_offer or authorized booking-read result. prepared returns links, not these IDs. The supplier offerKey is not a booking identifier; the identifier grants no access by itself."
    • changedOutput schema / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "booking": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "recordedStatus": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "recordedStatus"
      -        ],
      -        "type": "object"
      -      },
      -      "bookingKey": {
      -        "maxLength": 128,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "bookingReference": {
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "fulfillment": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "chauffeurAssignmentRecorded": {
      -            "type": "boolean"
      -          },
      -          "completionRecorded": {
      -            "type": "boolean"
      -          },
      -          "vehicleAssignmentRecorded": {
      -            "type": "boolean"
      -          }
      -        },
      -        "required": [
      -          "chauffeurAssignmentRecorded",
      -          "vehicleAssignmentRecorded",
      -          "completionRecorded"
      -        ],
      -        "type": "object"
      -      },
      -      "payment": {
      -        "additionalProperties": false,
      -        "properties": {
      -          "recordedStatus": {
      -            "maxLength": 64,
      -            "minLength": 1,
      -            "type": "string"
      -          }
      -        },
      -        "required": [
      -          "recordedStatus"
      -        ],
      -        "type": "object"
      -      },
      -      "status": {
      -        "const": "available",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "status",
      -      "bookingKey",
      -      "bookingReference",
      -      "booking",
      -      "payment",
      -      "fulfillment"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "status": {
      -        "const": "invalid_request",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "status"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "status": {
      -        "const": "login_required",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "status"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "status": {
      -        "const": "not_found",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "status"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "status": {
      -        "const": "unavailable",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "status"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "booking": {
      +        "additionalProperties": false,
      +        "description": "Booking state read from the stored reservation; it may lag provider events.",
      +        "properties": {
      +          "recordedStatus": {
      +            "description": "Stored reservation status string. It is not a new provider confirmation.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "recordedStatus"
      +        ],
      +        "type": "object"
      +      },
      +      "bookingKey": {
      +        "description": "Internal reservation ID for this selected booking. Returned in the available branch of get_offer_status/prepare_offer or an authorized booking read, not in prepared. It grants no access by itself.",
      +        "maxLength": 128,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "bookingReference": {
      +        "description": "Stored customer-visible reservation reference, falling back to bookingKey when absent. Customer OAuth accepts it only for its already-selected booking; it is not the supplier offerKey.",
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "fulfillment": {
      +        "additionalProperties": false,
      +        "description": "Flags derived from stored assignments and status, not live fulfillment confirmation.",
      +        "properties": {
      +          "chauffeurAssignmentRecorded": {
      +            "description": "True when a chauffeur ID is stored on the reservation; it does not confirm dispatch or acceptance.",
      +            "type": "boolean"
      +          },
      +          "completionRecorded": {
      +            "description": "True only when the stored reservation status is completed; no fresh service-completion check is made.",
      +            "type": "boolean"
      +          },
      +          "vehicleAssignmentRecorded": {
      +            "description": "True when a vehicle ID is stored on the reservation; it does not confirm availability or execution.",
      +            "type": "boolean"
      +          }
      +        },
      +        "required": [
      +          "chauffeurAssignmentRecorded",
      +          "vehicleAssignmentRecorded",
      +          "completionRecorded"
      +        ],
      +        "type": "object"
      +      },
      +      "payment": {
      +        "additionalProperties": false,
      +        "description": "Recorded payment state from this booking, without a payment-provider refresh.",
      +        "properties": {
      +          "recordedStatus": {
      +            "description": "Stored reservation payment-status string; no payment or refund is initiated or newly confirmed.",
      +            "maxLength": 64,
      +            "minLength": 1,
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "recordedStatus"
      +        ],
      +        "type": "object"
      +      },
      +      "status": {
      +        "const": "available",
      +        "description": "The selected booking was accessible and its stored fields passed validation; no provider refresh occurred.",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "status",
      +      "bookingKey",
      +      "bookingReference",
      +      "booking",
      +      "payment",
      +      "fulfillment"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "status": {
      +        "const": "invalid_request",
      +        "description": "Input does not match the booking-read contract.",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "status"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "status": {
      +        "const": "login_required",
      +        "description": "The original signed-in session must be established or renewed before reading.",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "status"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "status": {
      +        "const": "not_found",
      +        "description": "The selected booking is not accessible under current authority; this does not prove it is absent.",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "status"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "status": {
      +        "const": "unavailable",
      +        "description": "The stored booking could not be read or validated safely; this is not vehicle-availability evidence.",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "status"
      +    ],
      +    "type": "object"
      +  }
      +]
  3. Changed1 schema field changed
    • addedInput schema / properties / bookingKey / description
      Added value: +"Internal booking ID for the one selected booking. At the customer OAuth endpoint, its visible bookingReference is accepted too. Use a value returned for that same booking; the identifier grants no access by itself."
  4. Added

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources