BringEasy Agent API
BringEasy is a marketplace for used furniture and large appliances in Berlin: you buy a piece and book the transport with it, or you book only the transport for something you bought elsewhere. Self-employed drivers pick it up and bring it into your flat.
Read-only endpoints for software that shops on a human's behalf. Two promises hold everywhere: the disclosure is exactly what the public pages show, and every money figure comes from the pricing engine. Checkout itself requires a human: payment carries Strong Customer Authentication and the consent record is a human action, so the intended division of labour is that an agent finds, compares and assembles, and its human confirms and pays.
Endpoints
GET /api/agent/listingsActive listings, newest first. Query: limit (max 100), offset. Every field mirrors the public listing page; prices are integer cents.
GET /api/agent/listings/{id}One listing plus its concrete bookable pickup windows. The windows come from the same availability engine and the same payment-horizon cap as the human picker, so no date is offered that a booking would refuse. 410 when the listing is no longer active.
GET /api/agent/tariffThe transport tariff as machine-readable terms, re-exported from the pricing engine. Estimate any Berlin collection from these; the suggestion is made at booking from the exact facts, the buyer may move it within offerBand, and the settled figure is itemised before payment.
GET /api/agent/vocabularyEvery machine-readable refusal code a booking flow can answer with, plus the German and English sentences the product shows a human for the same code.
The transport tariff
Live values, identical to /api/agent/tariff:
{
"currency": "EUR",
"baseCents": 2000,
"includedKm": 5,
"perKmCentsBeyondIncluded": 100,
"perStairFlightCentsWithoutLift": 500,
"heavyItemSurchargeCents": 2000,
"minimumTransportCents": 3900,
"helperFlatCents": 4500,
"helperPerExtraTripStopCents": 1000,
"offerBand": {
"lowestShareOfSuggestion": 0.5,
"highestShareOfSuggestion": 1.8
},
"notes": [
"Transport within Berlin only.",
"BringEasy suggests the transport price at booking from the exact pickup and delivery facts; these terms let you estimate the suggestion.",
"On a single listing the buyer may move the suggestion, between 50% and 180% of it (offerBand); what they settle on is charged and paid to the driver. The price of an extra person does not move. minimumTransportCents is the lowest suggestion.",
"Item price, transport and the service fee are itemised before payment."
]
}Structured data
Every listing page carries schema.org Product JSON-LD with the item's price. The transport price is not in it: it depends on the buyer's door, and on a listing the buyer may move BringEasy's suggestion (see the tariff's offerBand). The catalogue is enumerated in https://www.bringeasy.de/sitemap.xml and summarised for language models in https://www.bringeasy.de/llms.txt.
Fair use
These endpoints exist to be read by software, including yours. Be identifiable in your User-Agent, cache what does not change, and treat the refusal vocabulary as the contract it is: a 4xx booking response names its reason with a code from /api/agent/vocabulary.