Demo backend

The public stand-in shop API the Acme sample tools call, so a real model has something to fetch before you connect your own endpoints.

Base: https://api.kletso.ai/demo/acme. No authentication. Read endpoints return fixed catalogue data; the two POSTs answer as if they succeeded without changing anything.

Method and pathQuery / paramsReturns
GET /productsq, maxPrice{ items: [ { sku, name, category, price, currency, image, rating, inStock } ], total, currency: "INR" }; six products, fuzzy word match, falls back to everything under maxPrice
GET /flightsfrom, to, date{ flights: [ { id, airline, from, to, depart, arrive, duration, price, currency: "JPY", status } ], date }; three flights, defaults HND → ITM tomorrow
GET /reports/salesperiod{ period, currency: "USD", total, changePct, byProduct: [ { name, total } ], byWeek: [ { week, total } ] }
GET /orders/:idORD-2201, ORD-2187, ORD-2100{ orderId, status, total, ageDays, items, eta, courier }, or 404 { error }
GET /orders/:id/shipment{ orderId, status, eta, courier, location: { lat, lng, label }, timeline: [ { at, what, where } ] }
POST /orders/:id/cancel{ orderId, status: "cancelled", refund, refundEta }; 409 if already delivered
POST /orders/:id/refund{ orderId, refundId, amount, eta }

Example:

curl "https://api.kletso.ai/demo/acme/products?q=running%20shoes&maxPrice=2000"

The sample agent’s five tools point here. Swap the URLs in Tools for your own API when you are ready; keep the argument schemas if they fit.

Last updated 2026-09-28 · Report an issue with this page