
The API is split into two parts:
AI Search API — upload a 2D design file (PDF, CAD drawing, or image) and let Kreo's AI automatically detect and measure elements on it: walls, doors, windows, rooms, and custom areas. You get back structured data — coordinates, lengths, thicknesses, areas, and perimeters — ready to use in your estimating software, spreadsheets, or internal systems.
Core Platform API — work with your existing Kreo Takeoff projects programmatically: upload files, create projects, read the measurements and groups you've created in the app, and export annotated drawings to PDF.
Typical use cases include quantity takeoff automation, feeding measurements into cost estimating pipelines, measurement validation, and integrating Kreo with your ERP or project management tools.
Every request to the API must be authenticated with an API key.
Go to the Key Management page in Kreo Takeoff.
Click + Create New Key.
Enter a descriptive name (e.g., Production or Staging) so you can identify the key later.
Click Create Secret Key.
Copy and store the key securely — it is displayed only once.
Click Copy and Close. The key is now active.
Pass the key in the X-API-KEY header with every request.
Here is the shortest path from a drawing to AI-detected data. The AI Search API lives at:
https://takeoff.kreo.net/api/ai-search/v1/takeoff2D1. Upload a file
curl -X POST "https://takeoff.kreo.net/api/ai-search/v1/takeoff2D/upload" \
-H "X-API-KEY: YOUR_API_KEY" \
-F "[email protected]"The response is a file key, e.g. temp/6c47cb338a7346d88ab843b1e6d8acf2.
2. Create a project
curl -X POST "https://takeoff.kreo.net/api/ai-search/v1/takeoff2D/project" \
-H "X-API-KEY: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"fileKey": "temp/6c47cb338a7346d88ab843b1e6d8acf2",
"pageIndex": 0,
"scale": { "drawingCalibrationLineLength": 1, "originalCalibrationLineLength": 100 }
}'The response contains a projectId and a status. If the status is Calculating (for example, while a CAD file is being converted), poll GET /projects/{projectId}/status until it becomes Ready.
3. Run an AI search
curl -X POST "https://takeoff.kreo.net/api/ai-search/v1/takeoff2D/projects/{projectId}/search" \
-H "X-API-KEY: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "dpi": 300, "type": "wall" }'You get back a jobId. Search runs asynchronously — poll GET /projects/{projectId}/search/{jobId} until the status is Ready, and the response will contain the detected elements with real-world measurements.
CAD files: DWG, DXF, DWF, DGN
Image files: PNG, TIFF, JPG, JPEG, BMP, EMF, GIF
Files must have a valid extension in the file name.
Complete endpoint documentation, schemas, and an interactive API explorer are available at our developer portal: kreo-software.readme.io.
If you have questions or run into issues, contact us at [email protected] or via the in-app chat.