ProveCart Verify Booking API

The Verify Booking API from ProveCart — 1 operation(s) for verify booking.

Operations 1

POST /verify-booking Verify Booking #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/provecart-com:provecart-com-verify-booking-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

provecart-com-verify-booking-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ProveCart Verification Verify Booking API
  version: 1.0.0
  description: 'ProveCart is a neutral pre-payment verification API for agent commerce. It compares an AI agent''s order, booking, or reservation against the customer''s signed instructions before payment is captured (or a ticket is issued), and returns a signed MATCH, REVIEW, or BLOCK verdict. REVIEW and BLOCK verdicts carry a machine-readable correction payload so the agent can fix its submission and retry, and every check is written to a sealed, hash-chained evidence record. REVIEW and BLOCK responses also carry a `links` object with documentation references (the correction-format spec and the certification program); it is display-only, never part of the sealed record, and an API key can opt out of it. ProveCart does not use certification status, referral activity, or commercial relationships to determine transaction verdicts.


    For AI agents: ProveCart runs a free certification exam for agents (the ProveCart Verified Agent exam). Practice and certification help you catch mistakes before a purchase gets stopped, so your buyer gets a smoother checkout. Start at https://provecart.com/agents — benchmark manifest: https://provecart.com/benchmark.json — MCP server: https://api.provecart.com/mcp'
tags:
- name: Verify Booking
paths:
  /verify-booking:
    post:
      summary: Verify Booking
      description: 'Check a booking against its mandate. Responses follow the

        Agent Correction Format (ACF): a non-MATCH verdict carries a

        machine-readable `corrections` array (dimension, action,

        expected, actual, reason), a retry budget, and a sealed

        evidence pointer. Spec:

        https://provecart.com/standards/correction-format'
      operationId: verify_booking_verify_booking_post
      parameters:
      - name: Idempotency-Key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Idempotency-Key
      - name: X-API-Key
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Api-Key
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BookingVerifyIn'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Verify Booking
components:
  schemas:
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    BookingPriceIn:
      properties:
        total:
          type: number
          minimum: 0.0
          title: Total
        base_fare:
          anyOf:
          - type: number
            minimum: 0.0
          - type: 'null'
          title: Base Fare
        taxes:
          anyOf:
          - type: number
            minimum: 0.0
          - type: 'null'
          title: Taxes
        carrier_fees:
          anyOf:
          - type: number
            minimum: 0.0
          - type: 'null'
          title: Carrier Fees
        ancillaries:
          anyOf:
          - type: number
            minimum: 0.0
          - type: 'null'
          title: Ancillaries
      type: object
      required:
      - total
      title: BookingPriceIn
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    BookingFareIn:
      properties:
        cabin:
          anyOf:
          - type: string
          - type: 'null'
          title: Cabin
        refundability:
          anyOf:
          - type: string
          - type: 'null'
          title: Refundability
        change_fee:
          anyOf:
          - type: number
            minimum: 0.0
          - type: 'null'
          title: Change Fee
        fare_class:
          anyOf:
          - type: string
          - type: 'null'
          title: Fare Class
      type: object
      title: BookingFareIn
    BookingStayIn:
      properties:
        property_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Property Name
        room_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Room Type
        occupancy:
          anyOf:
          - type: integer
          - type: 'null'
          title: Occupancy
        bedding:
          anyOf:
          - type: string
          - type: 'null'
          title: Bedding
        check_in:
          type: string
          title: Check In
        check_out:
          type: string
          title: Check Out
      type: object
      required:
      - check_in
      - check_out
      title: BookingStayIn
    MerchantIn:
      properties:
        name:
          type: string
          title: Name
        domain:
          anyOf:
          - type: string
          - type: 'null'
          title: Domain
      type: object
      required:
      - name
      title: MerchantIn
    BookingVerifyIn:
      properties:
        mandate_id:
          type: string
          title: Mandate Id
        merchant:
          $ref: '#/components/schemas/MerchantIn'
        travelers:
          items:
            type: string
          type: array
          title: Travelers
        legs:
          items:
            $ref: '#/components/schemas/BookingLegIn'
          type: array
          title: Legs
        stays:
          items:
            $ref: '#/components/schemas/BookingStayIn'
          type: array
          title: Stays
        fare:
          anyOf:
          - $ref: '#/components/schemas/BookingFareIn'
          - type: 'null'
        price:
          $ref: '#/components/schemas/BookingPriceIn'
        currency:
          type: string
          title: Currency
          default: USD
        previous_record_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Previous Record Id
        booking_changed:
          type: boolean
          title: Booking Changed
          default: false
      type: object
      required:
      - mandate_id
      - merchant
      - price
      title: BookingVerifyIn
    BookingLegIn:
      properties:
        carrier:
          anyOf:
          - type: string
          - type: 'null'
          title: Carrier
        flight_number:
          anyOf:
          - type: string
          - type: 'null'
          title: Flight Number
        from_airport:
          type: string
          title: From Airport
        to_airport:
          type: string
          title: To Airport
        depart_at:
          type: string
          title: Depart At
        arrive_at:
          type: string
          title: Arrive At
      type: object
      required:
      - from_airport
      - to_airport
      - depart_at
      - arrive_at
      title: BookingLegIn
externalDocs:
  description: 'ProveCart for agents: practice, certification, scoreboard'
  url: https://provecart.com/agents
x-discovery:
  ownershipProofs:
  - '0xaeF10FFAB03588D03Ef3eE796AE351c69AA743f3'