{"openapi":"3.1.0","info":{"title":"Drywall Calculator API","version":"1.0.0","description":"Drywall (plasterboard) material-estimation maths as an API, computed locally and deterministically. The sheets endpoint computes how many boards a wall or ceiling needs — the area (given directly, or as perimeter × height, or length × width) divided by the sheet area, with a waste allowance — and the number of screws (about 32 per standard sheet). The compound endpoint estimates the joint compound in kilograms and the joint tape in metres for taping and finishing the boarded area, with adjustable per-square-metre factors for your product and number of coats. The cost endpoint totals the project from the sheets and their price plus the compound and tape. The standard 2.4 × 1.2 m board is assumed unless you override it. Everything is computed locally and deterministically, so it is instant and private. Ideal for construction, renovation and trade app developers, drywall and plastering estimators, and builder and retailer tools. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is drywall material estimation; for insulation R-values use a U-value API and for wall paint use a paint API.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/drywall-api","description":"oanor gateway"}],"tags":[{"name":"Drywall"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/compound":{"get":{"operationId":"get_v1_compound","tags":["Drywall"],"summary":"Joint compound & tape","description":"","parameters":[{"name":"area","in":"query","required":false,"description":"Area (m²)","schema":{"type":"string"},"example":"50"},{"name":"perimeter","in":"query","required":false,"description":"Or perimeter (m)","schema":{"type":"string"}},{"name":"wall_height","in":"query","required":false,"description":"and height (m)","schema":{"type":"string"}},{"name":"compound_kg_per_m2","in":"query","required":false,"description":"Compound kg/m² (default 0.7)","schema":{"type":"string"},"example":"0.7"},{"name":"tape_m_per_m2","in":"query","required":false,"description":"Tape m/m² (default 1.3)","schema":{"type":"string"},"example":"1.3"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Approximate: ~0.7 kg of joint compound and ~1.3 m of tape per m² for taping and two finish coats. Adjust the factors to your product.","inputs":{"area":50,"tape_m_per_m2":1.3,"compound_kg_per_m2":0.7},"joint_tape_m":65,"joint_compound_kg":35},"meta":{"timestamp":"2026-06-04T18:38:17.080Z","request_id":"58b4369d-024f-406a-8747-35fa423d8585"},"status":"ok","message":"Joint compound & tape","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/cost":{"get":{"operationId":"get_v1_cost","tags":["Drywall"],"summary":"Project cost","description":"","parameters":[{"name":"sheets","in":"query","required":true,"description":"Number of sheets","schema":{"type":"string"},"example":"20"},{"name":"sheet_price","in":"query","required":true,"description":"Price per sheet","schema":{"type":"string"},"example":"12"},{"name":"compound_kg","in":"query","required":false,"description":"Compound (kg)","schema":{"type":"string"},"example":"35"},{"name":"compound_price_per_kg","in":"query","required":false,"description":"Compound price per kg","schema":{"type":"string"},"example":"2"},{"name":"tape_m","in":"query","required":false,"description":"Tape (m)","schema":{"type":"string"},"example":"65"},{"name":"tape_price_per_m","in":"query","required":false,"description":"Tape price per m","schema":{"type":"string"},"example":"0.5"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Total = sheets × price + compound + tape. Supply compound/tape quantities and prices to include them.","inputs":{"sheets":20,"sheet_price":12},"tape_cost":32.5,"sheet_cost":240,"total_cost":342.5,"compound_cost":70},"meta":{"timestamp":"2026-06-04T18:38:17.173Z","request_id":"79ac558d-18c0-460f-a66c-42851ef2cf61"},"status":"ok","message":"Project cost","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/sheets":{"get":{"operationId":"get_v1_sheets","tags":["Drywall"],"summary":"Sheets & screws","description":"","parameters":[{"name":"area","in":"query","required":false,"description":"Area (m²)","schema":{"type":"string"},"example":"50"},{"name":"perimeter","in":"query","required":false,"description":"Or perimeter (m)","schema":{"type":"string"}},{"name":"wall_height","in":"query","required":false,"description":"and wall height (m)","schema":{"type":"string"}},{"name":"length","in":"query","required":false,"description":"Or length (m)","schema":{"type":"string"}},{"name":"width","in":"query","required":false,"description":"and width (m)","schema":{"type":"string"}},{"name":"sheet_length","in":"query","required":false,"description":"Sheet length (m, default 2.4)","schema":{"type":"string"},"example":"2.4"},{"name":"sheet_width","in":"query","required":false,"description":"Sheet width (m, default 1.2)","schema":{"type":"string"},"example":"1.2"},{"name":"waste_percent","in":"query","required":false,"description":"Waste % (default 10)","schema":{"type":"string"},"example":"10"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Sheets = ceil(area·(1+waste) / sheet area). Default sheet 2.4 × 1.2 m, ~32 screws per sheet.","inputs":{"area":50,"sheet_width":1.2,"sheet_length":2.4,"waste_percent":10},"screws_needed":640,"sheet_area_m2":2.88,"sheets_needed":20},"meta":{"timestamp":"2026-06-04T18:38:17.303Z","request_id":"b45dfa19-8893-4878-b2b4-01662a352a17"},"status":"ok","message":"Sheets needed","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Spec","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"notes":"Area in m² (or perimeter × height, or length × width). Default sheet 2.4 × 1.2 m. Compound/tape factors are industry averages — adjust for your product and number of coats.","service":"drywall-api","formulae":{"screws":"sheets × screws_per_sheet","sheets":"ceil(area·(1+waste) / sheet_area)","compound":"area × kg_per_m2,  tape = area × m_per_m2"},"endpoints":{"GET /v1/cost":"Project cost from sheets, compound and tape.","GET /v1/meta":"This document.","GET /v1/sheets":"Sheets and screws for a wall/ceiling area, with a waste allowance.","GET /v1/compound":"Joint compound (kg) and tape (m) for the boarded area."},"description":"Drywall / plasterboard estimator: sheets and screws for an area, joint compound and tape, and project cost."},"meta":{"timestamp":"2026-06-04T18:38:17.383Z","request_id":"4ca2b2ee-d799-413b-a345-ab0c08f12451"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":2000,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":900,"monthly_call_quota":15000,"rps_limit":5,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2400,"monthly_call_quota":80000,"rps_limit":15,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":7500,"monthly_call_quota":445000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/drywall-api"}