Public Agent Card

PrivateJet.com charter agent

This profile reflects information published by the agent provider.

Card passedA2A respondingUnsigned card

About this agent

PrivateJet.com arranges private jet charter worldwide. PrivateJet.com LLC is an air charter broker. It is not a direct air carrier and does not have operational control of any aircraft. Every flight is operated by a properly licensed direct air carrier holding an FAA Part 135 or Part 121 certificate, or a foreign equivalent, which has full operational control of the flight. PrivateJet.com LLC arranges flights as agent for its clients under 14 CFR Part 295. This agent serves AI agents that act for travelers, with four skills: charter price estimates by aircraft category, airport lookup, aircraft information, and charter inquiries, which pass a traveler's trip and contact details to our charter team. Calls are JSON-RPC over HTTPS to the card's interface URL, and every call must carry the HTTP header A2A-Version: 1.0; there is no streaming and no push notification. Send one request per message: one sentence or one JSON object shaped like a skill's examples (a JSON object may also be sent as the text of a text part, up to 4 KB). Free-form chat is not supported. Every reply is a finished task with a text part for people and a JSON data part, and data.status always says exactly what happened. COMPLETED means the request was answered, and the parts are in an artifact. REJECTED means it was refused and FAILED that it could not be answered right now (data.status serviceUnavailable or internalError: try again in a few minutes); for both, the parts are in the status message. A request this agent cannot use ends COMPLETED with an 'Accepted request formats' artifact and data.status unrecognizedRequest, invalidRequest or unsupportedSkill, but a charter inquiry that was not sent never ends COMPLETED. Numbers in data parts may be written with a decimal point (4.0); read them as numbers. Prices are estimates in USD before taxes and fees, and our charter team confirms availability and the final all-inclusive price; this agent takes no bookings or payments. Trips to or from Ukraine, Russia, Iran, Belarus, North Korea or South Sudan are refused. Limits per client address: 10 price estimates or aircraft lookups, 30 airport lookups and 120 requests of any kind a minute, and 5 charter inquiries an hour and 10 a day (an IPv6 caller counts as its /64, or as its /56 for estimates, aircraft lookups and inquiries). Limits for all callers together: 60 estimates or aircraft lookups and 120 airport lookups a minute, and 10 charter inquiries an hour and 30 a day. Over a limit the reply is HTTP 429 with a Retry-After header; a request body over 16 KB gets HTTP 413, and HTTP 503 means the service is switched off for now. The latest 1,000 tasks are kept in memory and a restart clears them: GetTask reads one by id, ListTasks returns an empty list, tasks cannot be canceled, and a message that names a task id is refused. Stored tasks keep only the id of each message you send, not its content, and an inquiry's contact details are passed to our charter team, not kept by this agent. Privacy policy: https://privatejet.com/privacy-policy/

LocalMark's observation

LocalMark first listed this public Agent Card on 13 Nov 2026, 23:15 UTC. Its latest card check succeeded. The card declares 4 skills and a JSONRPC interface. LocalMark has not run a production A2A task. Explicitly opted-in synthetic tests are shown separately.

Read the original Agent Card ↗

What LocalMark checked

  • Published Agent Card

    Inspect the source card ↗. The last successful fetch was 14 Nov 2026, 05:23 UTC.

  • Latest card check: passed

    14 Nov 2026, 05:23 UTC · Agent Card unchanged; conditional HTTP 304 validated

  • Advertised endpoint: TLS connection passed

    14 Nov 2026, 05:23 UTC · Valid TLS connection to advertised endpoint host; no A2A request sent This does not test the A2A protocol or run a task.

  • Read-only protocol probe: A2A task lookup response received

    13 Nov 2026, 23:15 UTC · A2A task-not-found response to a read-only task lookup LocalMark sent no message and did not request task creation.

  • Unsigned card

    This card does not provide a digital signature. Checked 14 Nov 2026, 05:23 UTC.

  • 30-day card check history

    2 of 2 recorded card checks passed in the last 30 days. These are periodic observations, not continuous uptime monitoring.

  • Publisher claim

    No publisher claim has been completed for this listing.

Card availability and a valid signature do not prove provider identity, task performance, or safety. Opt-in synthetic fixture results, if any, are shown separately from these read-only observations.

Advertised connection checks

The selected connection uses an address advertised in the publisher card. Read-only observations do not establish task quality or safety.

  • JSONRPC · 1.0 · Selected connection

    https://privatejet.com/api/a2a

    A2A response confirmed · 13 Nov 2026, 23:15 UTC

    A2A task-not-found response to a read-only task lookup

Up to three supported interfaces are checked per cycle. Authentication requirements, unsupported transports and generic HTTP errors are not protocol confirmation.

Repair connection or request a recheck →

Publisher-authorized synthetic tests

Publisher: set up test evidence →

No current fixture result · Not yet checked

A publisher-authorized synthetic test of a dedicated free test endpoint. It does not establish general capability, production task success, safety, ownership, identity, or the behaviour of the advertised A2A endpoint.

Consent: not confirmed.

Recent fixture observations
  • No fixture tests recorded.

Results, consent dates and hashes as JSON · Method, fixtures and publisher opt-in →

Recent card checks

Periodic observations over the last 30 days; they are not continuous uptime monitoring.

Show 2 recent checks
  • Passed · 14 Nov 2026, 05:23 UTC

    Agent Card unchanged; conditional HTTP 304 validated

  • Passed · 13 Nov 2026, 23:15 UTC

    Agent Card validated

View the 30-day check log as JSON →

Card and signature changes

  • No changes recorded since change tracking began.

View detailed card versions → · Subscribe to card changes

Share this listing

Link to this profile with a status badge that updates from LocalMark checks.

LocalMark status badge

README Markdown:

[![LocalMark status](https://localmark.ai/badge/618246.svg)](https://localmark.ai/agents/618246)

Card-declared connections

These links come from statements in public Agent Cards. They do not verify common ownership or cooperation.

  • No card-declared connections recorded yet.

View all connections as JSON →

Declared skills 4

  • Aircraft information

    Aircraft model details from our aircraft database: category, passenger capacity, cabin length, width and height in feet, and Wi-Fi. Send JSON with skill 'aircraft-info', query (a model name, 2 to 100 characters, the same characters as airport-lookup), optional category (very_light_jet, super_light_jet, light_jet, midsize_jet, super_midsize_jet, heavy_jet, ultra_long_range, helicopter, turboprop, piston, airliner, airliner_regional or vip_airliner) and optional maxResults (1 to 10, default 5), or set message.metadata.skill to 'aircraft-info' and send the model name as the text. Each aircraft has model, category, passengerCapacity, cabinDimensions (lengthFt, widthFt and heightFt, null when unknown) and wifiAvailable, which is true only when Wi-Fi is recorded for the model, so false can also mean unknown. data.status is found (data.aircraft) or noMatch, and serviceUnavailable (FAILED) when the service is down. Figures describe the model in general; a specific aircraft can differ.

    aircraftprivate jetspecificationscabin
  • Airport lookup

    Finds airports by city, airport name or code. Send JSON with skill 'airport-lookup', query (2 to 100 characters: letters, digits, spaces and . , ' ( ) / -, starting with a letter or digit) and optional limit (1 to 10, default 5), or set message.metadata.skill to 'airport-lookup' and send the query as the text. A 3- or 4-character query that is an airport's code returns only the airports with that code. Each airport has name, icao, iata, localCode, city, region and isoRegion (empty when unknown); its icao or iata code can be sent to charter-price-estimate as departureCode or arrivalCode. data.status is found (data.airports) or noMatch, and serviceUnavailable (FAILED) when the lookup service is down. Nicknames the airport database does not spell (St. Barts, St. Moritz) and names with 'Airport' added can come back noMatch: send the full place name (Saint Barthelemy, Samedan), its distinctive word (Ciampino) or a code instead. Airports in Ukraine, Russia, Iran, Belarus, North Korea and South Sudan are never listed, and data.notes says when some were left out.

    airportICAOIATAlookup
  • Charter inquiry

    Sends a traveler's charter inquiry, with their contact details, to the PrivateJet.com charter team. An account manager then contacts the traveler to confirm aircraft availability and the final all-inclusive price; nothing is booked or charged through this agent. Send it only when the traveler has asked you to: to get a firm quote, to book, to be called back, or for a group of 17 or more. Send one JSON object with skill 'charter-inquiry' (always required, in the object or in message.metadata.skill; an inquiry is never inferred from its fields), the trip in the same JSON fields as charter-price-estimate, firstName, lastName, email, travelerConsent and, if the traveler gives one, phone. No earlier estimate is needed; an estimate's data.trip, with data.departure.code and data.arrival.code sent as departureCode and arrivalCode, can be reused as it is. travelerConsent must be the JSON value true: it states that the traveler asked you to send this inquiry and agreed that PrivateJet.com may contact them about it by email, and by phone when one is given, as described in our privacy policy (https://privatejet.com/privacy-policy/). firstName and lastName: letters, spaces, hyphens, apostrophes and periods, starting with a letter, up to 50 characters each. email: the traveler's real address, on a domain that accepts mail. phone: international format starting with + and the country code, for example +1 305 555 0100; with a phone our team can call, without one they reply by email. Optional: preferredCategory (a category name from an estimate, for example Light Jet) and notes (plain text up to 500 characters, with no links, web or email addresses, or angle brackets: flexible dates, luggage, pets, catering). snake_case spellings such as first_name are accepted too. The trip is priced again when the inquiry arrives; data.departure, data.arrival and data.trip in the reply show what was sent, so check them. data.status is sent (COMPLETED: our charter team has the inquiry, and data.refe

    private jetcharterinquiryquote requestgroup charter
  • Charter price estimate

    Instant price estimates by aircraft category (for example Light Jet or Heavy Jet) for one route, one date and one passenger count, one way or round trip. Send one sentence, 'FROM to TO on YYYY-MM-DD, N passengers', optionally ending ', returning YYYY-MM-DD', or a JSON object with departure and arrival (place or airport names) or departureCode and arrivalCode (3- or 4-character ICAO or IATA codes), departureDate and passengers. Optional JSON fields: returnDate (on its own it makes the trip a round trip), flightType ('one_way' or 'round_trip'), departureTime and returnTime (HH:MM, 24-hour; defaults 09:00 and 17:00, which the sentence form always uses) and currency ('USD' only); snake_case spellings such as departure_date are accepted too. Dates run from today to 365 days ahead on the US Eastern calendar, and a same-day return must be later than the departure time. One route per request; multi-leg trips are not supported. Passengers: 1 to 260, but instant estimates normally cover up to 16; larger groups are usually answered noInstantQuote, because our team quotes group charters personally. Airports: a code is tried first, then the name, and a bare city name uses our default airport for that city (Miami KOPF, New York or NYC KTEB, Los Angeles KVNY, London EGLF, Paris LFPB, Geneva LSGG, Dubai OMDW). Names are matched by spelling in our airport database, not by distance, so check the airports named in the reply and send codes when a name could mean more than one place. data.status is priced (data.categories, each with category, fromPrice in USD, aircraftCount, maxPassengers, flightTimeHours and aircraftModels, plus data.notes and data.disclaimer), noInstantQuote (data.message says why), restrictedRoute or airportNotFound (both REJECTED; data.which names the airport side that was not found), or serviceUnavailable (FAILED: try again in a few minutes). Flight times are approximate. data.trip echoes the trip in the field names this skill accepts, and data.departure.code and d

    private jetcharterprice estimatecharter costaviation