This public, read-only interface uses the same calculation engine as the Staenis website. It returns estimated material quantities, separate alternatives and a link to review the calculation on the website. No account or API key is required.
OpenAPI 3.1 specification · Version 1
GET https://www.staenis.com/api/calculator/v1/calculate?surfaceM2=27&thicknessMm=80&filling=screed&country=be&culture=nl-BE
Send exactly these five query parameters, once each. Do not send a request body, email, postal address, postcode, phone number, contact details or cookies. Requests with unknown or duplicate parameters are rejected.
| Parameter | Meaning |
|---|---|
surfaceM2 | Whole square metres, 1–5000. Do not silently round a customer's dimensions. |
thicknessMm | Whole millimetres, 1–2000. The chosen material's narrower limits are checked by the calculator. For dry systems and system-only comparisons, exclude floor boards and finish. |
filling | One of the codes below. |
country | Recognized lowercase two-letter ISO country code, for example be. Material and system availability depends on country. Do not substitute Belgium for another country. |
culture | nl-BE, nl-NL, fr-BE, fr-FR, de-DE or en-150. Protocol keys and product names are English; validation and thermal labels follow this language. |
screed: chape / screed (250 kg cement per m³).screed_plus_insulation_screed: insulation screed plus screed; both layers are required.stabilise: stabilised sand (150 kg cement per m³).drainage_mortar: drainage mortar with its additional 5 mm screed top layer.non_tileable_insulation_screed: insulation screed Soft.tileable_insulation_screed: Strong or Cem Mini, each with its own finishing quantities.dry_floor_systems: dry floor grid and/or CircoFloor, with compatible EPS, cork or aerated concrete alternatives.egaline: leveling compound and preparation.none: system hardware only; compatible leveling, screed, dry floor grids and CircoFloor are separate alternatives.systems.sharedComponents once.requiredGroups, choose exactly one option. All items inside that option belong together.For example, Strong and Cem Mini are two options. Each has its own insulation material, primer and leveling compound. Cem Mini uses the calculator's 1 mm allowance instead of Strong's 2 mm; rounding to whole bags happens independently. At eligible screed heights, Cem Mini is also returned as an alternative to screed.
quantity is measured in unit: boxes, bags, bundles, pallets, quarter-pallets, containers, kilograms or tonnes. packageSize and packageUnit describe the package, when known. Thus 2 bundles containing 25 pieces each mean 50 pieces. Do not confuse a package's nominal volume with its effective calculation yield. Ingredient items for self-mix are ingredients, not extra material on top of a total mix.
webshopVariantId is a catalog identifier, not proof of stock or delivery. includedInWebshopProposal states whether the model includes that product in its webshop proposals for the selected country and quantity. This still requires checkout review. minimumOrderQuantity and exceedsMaximumOrder flag order constraints. A retired product may remain as an informative estimate with no shop identifier. An empty group's options mean filler quantities are unavailable for that country; it does not mean the floor needs no filling.
thermalPerformance contains informational material or layer properties. Lambda is in W/(m·K), Rd in m²·K/W. Do not add values belonging to alternatives. No result is a structural assessment or approval of a complete floor assembly.
Present resultUrl as a normal link. It opens the same area, height, filling, country and language on Staenis. The customer can review quantities, request a price including transport or choose ordering options. This API does not return prices, send emails, create leads, change carts or place orders.
The shared service has no request queue: at most 2 concurrent requests, a global burst of 20 requests replenished at 2 per second, and at most 20 requests per client network per fixed minute. These are ceilings, not guaranteed capacity; clients may share a network/budget. Use sequential calls only when needed. Successful results are cached in bounded server memory for 10 minutes.
On 429, respect Retry-After and back off. Do not loop, rotate addresses or retry in parallel. 400 means invalid input; 422 means material-specific validation failed. 405 means GET is required; 503 means temporarily unavailable. Explain failures and offer the ordinary calculator. Do not invent a result.
Compatible browsers can discover staenis_calculate_floor on the calculator page through WebMCP. It calls this same limited API, returns the result and has no form-submission or ordering action. Availability depends on the browser's WebMCP implementation; ordinary visitors can continue using the standard form. There is no remote MCP server at this endpoint.