company logo

Help center

Go to Kreo Software
WebsiteYoutube
All collectionsIntegrationAPIGetting Started with the Kreo API

Getting Started with the Kreo API

Kreo provides a REST API that lets you connect Kreo's takeoff engine to your own tools and workflows — no need to open the Kreo app to get data out of your drawings.

Andrew Markevich·September 17, 2026

What can you do with the Kreo API?

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.

Step 1: Create an API key

Every request to the API must be authenticated with an API key.

  1. Go to the Key Management page in Kreo Takeoff.

  2. Click + Create New Key.

  3. Enter a descriptive name (e.g., Production or Staging) so you can identify the key later.

  4. Click Create Secret Key.

  5. Copy and store the key securely — it is displayed only once.

  6. Click Copy and Close. The key is now active.

Pass the key in the X-API-KEY header with every request.

Step 2: Make your first 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/takeoff2D

1. 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.

Supported file formats

  • PDF

  • 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.

Full API reference

Complete endpoint documentation, schemas, and an interactive API explorer are available at our developer portal: kreo-software.readme.io.

Need help?

If you have questions or run into issues, contact us at [email protected] or via the in-app chat.

Did this answer your question?
😞
😐
😁