HVAC Takeoff API for Estimating Software and In-House Tools
Try AI Takeoff Free
No credit card · Upload a PDF in 10 seconds · Runs in your browser on Mac or Windows
Try AI Takeoff FreeSee an AI Takeoff in 10 Seconds
The sample is a real DuctIQ takeoff workbook: no signup. Plans and credits are on the pricing page.
The DuctIQ API lets your software send a mechanical drawing set and get the HVAC takeoff back: duct linear feet by size and system, fittings, diffusers, grilles and equipment, with every line tied to the sheet it came from. Results come back as JSON line items, or as the same Excel workbook estimators download in the web app.
It is built for contractors who run their own estimating or pricing platform, for software companies adding mechanical takeoff to their product, and for teams that want takeoffs to start without anyone uploading files by hand. Create an account, add credits, create a key in Settings, and you can make your first call the same day.
What the API returns
Every takeoff comes back as structured line items your system can price directly. Each row carries the system, category, description, size, shape, quantity and unit, plus gauge, material, lining and pressure class where the drawings or the project specification give them. Equipment rows add the manufacturer, model, tonnage, CFM and voltage read from the schedules.
- Ductwork by system and size, in linear feet.
- Fittings and air devices (diffusers, grilles, registers, VAV boxes) as counts.
- Equipment from the schedules, such as RTUs, AHUs and fans, with the schedule reference.
- A confidence value and a review status on every row, so your platform can flag what a person should check.
- The source sheet for each line, for traceability back to the drawing.
- The full Excel workbook, for teams that prefer to price in a spreadsheet.
How it works: four calls
The API is a plain REST interface over HTTPS with JSON responses, authenticated with an API key sent as a bearer token. Retries are safe: send a clientRequestId with each takeoff and a repeated request never starts or charges a second one.
- POST /quotes: send a PDF and get each page classified and the exact credit price. Nothing is stored or charged.
- POST /takeoffs: upload the set, and optionally the project specification, to start a takeoff. The API answers right away with a takeoff id.
- GET /takeoffs/{id}: poll for status, progress and an estimated time remaining until the takeoff is ready.
- GET /takeoffs/{id}/items or /excel: fetch the line items as JSON, or download the workbook.
Start your free takeoffOr download a real sample takeoff first
Pricing: the same credits as the web app
API takeoffs draw on the same credit balance as uploads in the web app, at the same per-sheet rate. Each mechanical plan sheet costs 5 to 15 credits depending on how dense the ductwork is, and legends, schedules, details and specifications are read for context at no charge. Plans start at $29.99 CAD a month for 10 credits.
Ask for a quote first and you know the exact price of a set before anything runs. If your balance does not cover a takeoff, it is refused before it starts, so there are no surprise charges.
Who uses an HVAC takeoff API
- Mechanical contractors with an in-house estimating or pricing system that prices bids from its own rate card.
- Estimating and construction software companies that want duct and equipment takeoff inside their product.
- Bid management, ERP and point-of-sale platforms that move drawings and quantities between tools.
- Teams that receive drawing sets by email or download and want takeoffs started automatically.
Built to be reviewed, not trusted blindly
Takeoffs are AI-assisted estimates, and the API says so in the data. Rows that need a person carry a review status and flags that explain why. Out-of-scope items such as gas piping and demolition are listed separately, so they never end up in an HVAC price. A takeoff that fell back to a weaker reader is marked as degraded. Your platform can show an estimator exactly what to check before the bid goes out.
Your drawings stay yours
Customers keep ownership of the drawings they upload, and DuctIQ does not use them to train AI models. The Terms of Use, which include a section on API access, cover every account, so there is no separate contract to negotiate before you start.
Run your first takeoff free
Upload a mechanical PDF and get a reviewable ductwork, fittings, and equipment takeoff you can export to Excel. No credit card to try your first drawing.
Built by a practicing P.Eng and principal of an Ontario mechanical contracting firm, for the estimators at that firm.
Start your free takeoff Download a sample takeoff See pricingNew to AI takeoff and want a hand? Send us your first drawing and we'll help you review the output, or book a 1:1 walkthrough.
Related HVAC takeoff guides
Further reading
Frequently asked questions
Does DuctIQ have an API?
Yes. DuctIQ has a public REST API (version 1). You create an API key in Settings, send a mechanical PDF, and get the takeoff back as JSON line items or an Excel workbook. The documentation is at ductiq.ca/developers.
How much does the HVAC takeoff API cost?
API takeoffs use the same credits and per-sheet rate as the web app. Each mechanical plan sheet costs 5 to 15 credits depending on duct density, and non-plan sheets are free. You can request a free quote for any set before running it.
How long does an API takeoff take?
A takeoff usually takes a few minutes per plan sheet. The API answers immediately with a takeoff id, and the status endpoint reports progress and an estimated time remaining while it runs.
Can I try DuctIQ before I integrate?
Yes. The web app includes a free one-sheet trial, so you can see a takeoff of one of your own drawings before writing any code. The API itself runs on paid credits.
What are the API rate limits?
120 requests per minute per key, and 40 uploads or quotes per 15 minutes per account. Each request takes one PDF of up to 1 GB, and status should be polled no more than every 10 seconds.
Do I need to sign a contract or NDA to use the API?
No. The API is self-serve: your account and the Terms of Use cover API access, and the drawings you send are not used to train AI models.