Draft 0.1 · open format

Quote requests from AI agents

A plain format for asking a business for a price: the same fields a person fills in on a quote form, sent as JSON. It is Kavel's draft. It may change, and it is not an industry standard.

Principles

  • A request is not an order. Sending one commits nobody to anything. A person at the supplier decides the price and terms and replies.
  • Agents say so. Set "agent": true when an AI agent sends a request for a person. The supplier is told.
  • The person approves first. An agent should show the person the exact request and get their approval before sending it.
  • Plain fields. Description, quantity and unit cover most requests. Everything else is optional.

Where to send it

Each supplier with a free Kavel quote page has an address like https://getkavel.com/q/<id> for people, and https://getkavel.com/api/q/<id> for software:

  • GET /api/q/<id> returns who the page belongs to (company and website), so you can check before sending.
  • POST /api/q/<id> with Content-Type: application/json sends the request.

AI assistants can do the same through Kavel's MCP server (tools get_quote_page and request_quote).

Fields

FieldRequiredWhat it is
emailYesThe buyer's email address. The supplier replies here directly.
itemsYes1 to 50 lines, each with description (required), spec (size, grade, colour or part number), quantity (a number where possible) and unit.
name, companyNoWho is asking.
agentNotrue when an AI agent sends it for a person.
deliverTo, neededBy, replyByNoTown or postcode, and dates (YYYY-MM-DD is clearest).
paymentTerms, notesNoTerms asked for, and anything else the supplier should know.

Machine-readable: JSON Schema · OpenAPI.

Example

POST https://getkavel.com/api/q/<id>
Content-Type: application/json

{"email": "buyer@example.com", "name": "Sam", "company": "Example Ltd", "agent": true,
 "items": [{"description": "Hex bolt M8 x 40mm", "spec": "stainless A2", "quantity": 400, "unit": "pcs"}],
 "deliverTo": "Leeds", "neededBy": "2026-11-14"}

Replies

  • 200 {"ok": true, ...}: sent to the supplier by email. They reply to the buyer directly, in the usual way.
  • 400: a field is missing or invalid; the error says which.
  • 404: no active quote page with that id.
  • 429: too many requests (each page takes up to 30 a day, and each sender up to 6 an hour).

What the supplier receives

An email listing every line, the delivery details and the buyer's address as reply-to, with the same request attached as a block of JSON that tools such as QuoteDesk read without AI. Kavel does not keep a copy of the request.

Limits

  • It does not prove who sent a request. Suppliers should treat each one as they would an email from someone new.
  • It does not carry prices, payment details or binding commitments.
  • Formal procurement standards, such as the Request For Quotation document in OASIS UBL, go much further. This format is deliberately small, and its fields map onto them.

Draft 0.1, October 2026. Written with AI. Suggestions: support@getkavel.com.

Start monthly monitoring

We scan your homepage every month and email you a report with what is new, fixed and still open. Cancel any time.

You will pay $39 a month. Price shown in your local currency.

Tell me when it's ready

We'll email you once, when this is available. No spam, and no sharing your address.