canonical: https://jentic.com/apis/aginera.ai/aginera

# Aginera Takeoff & Estimation API

The Aginera API extracts structured construction quantities from drawings so they can be measured, reviewed, and exported. A project holds drawing documents added from a URL or direct upload, and a takeoff run over a document returns measured items, routes such as conduit and pipe, and detected schedules. Extracted items can be accepted, rejected, or overridden while the raw extraction stays immutable, and the result exports to CSV, XLSX, or JSON for downstream estimating. It can also convert a PDF drawing to DXF or DWG and reports credit balance and per-request usage.

## For AI agents

Run takeoffs on construction drawings to extract measured items, routes, and schedules, review and override them, export to CSV/XLSX/JSON, and convert PDFs to CAD.

## Scope

Does not handle project scheduling, procurement, or contractor payments. Use for extracting construction quantities, routes, and schedules from drawings and exporting them only.

## Capabilities

- Create a project and attach drawing documents from a URL or a direct upload
- Run a takeoff on a document to extract measured items, routes, and schedules
- Review extracted items by accepting, rejecting, or overriding them
- Read takeoff totals by trade, category, and unit
- Export a takeoff to CSV, XLSX, or JSON
- Convert a PDF drawing to DXF or DWG and get a time-limited download link
- Check the account's credit balance and per-request usage

## Use cases

### Agent-Run Construction Takeoffs

An AI agent connecting through Jentic can turn a drawing into measured quantities without a human in the loop: it creates a project, adds the document, starts a takeoff, and polls until the summary is ready. Jentic injects the OAuth token at call time, so the agent runs the long-running takeoff flow without ever holding the credential in its prompt.

Example prompt: Create a project, add a drawing document, start a takeoff on it, then poll the takeoff until its summary resolves

### Drawing-to-Quantities Extraction

Pull measured items, routes, and schedules straight from a construction drawing. The Aginera API runs a takeoff on a document and returns extracted items, measured routes like conduit, feeder, duct, pipe, and tray with endpoints and geometry, and detected schedules for panels, fixtures, and equipment, with totals broken out by trade, category, and unit.

Example prompt: Run a takeoff on a document, then read its items and routes and the summary totals by trade and unit

### Takeoff Review and Export

Correct an extraction and hand it off to an estimating tool. The Aginera API lets you accept, reject, or override individual items while keeping the raw extraction immutable, then export the reviewed takeoff to CSV, XLSX, or JSON. An agent can clean up a takeoff and deliver a spreadsheet the estimator can price.

Example prompt: Override a mis-extracted item on a takeoff, then create an XLSX export and return its download link

### PDF Drawing to CAD

Convert a PDF drawing into a CAD file an estimator or detailer can open. The Aginera API checks whether a document can be converted and what it costs the account, then converts the PDF to DXF or DWG and returns a time-limited download link, so an agent can produce a CAD deliverable from a flat drawing on demand.

Example prompt: Check the CAD conversion cost for a document, then convert its PDF to DXF and return the time-limited download link

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/projects` | Create a project |
| POST | `/documents` | Add a drawing document |
| POST | `/takeoffs` | Start a takeoff on a document |
| GET | `/takeoffs/{takeoff_id}/items` | List extracted items |
| GET | `/takeoffs/{takeoff_id}/summary` | Totals by trade, category, and unit |
| POST | `/exports` | Export a takeoff as CSV, XLSX, or JSON |
| POST | `/documents/{document_id}/cad-files` | Convert a PDF to DXF or DWG |

## Key resources

- **Projects** — List, create, read, update, and delete projects that hold drawing documents
- **Documents** — Add drawings from a URL or direct upload, read sheets, download originals, and convert PDFs to CAD
- **Takeoffs** — Start takeoffs, read status and summaries, list items, routes, and schedules, and review items
- **Exports** — Export a takeoff to CSV, XLSX, or JSON and read export status and download links
- **Account** — Read credit balance, aggregated and per-request usage, and current account capabilities

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 62 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 61 / 100
  - Developer Experience & Jentic Compatibility: 63 / 100
  - AI-Readiness & Agent Experience: 42 / 100
  - Agent Usability: 94 / 100
  - Security: 85 / 100
  - AI Discoverability: 66 / 100
- **View full report:** https://jentic.com/apis/aginera.ai/aginera/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring the Aginera API by hand means standing up its OAuth 2.0 client-credentials flow, requesting the right scopes, and polling long-running takeoffs and exports yourself. Through Jentic you install once, import Aginera from the API Directory, store the credential once, and your agent calls it.
- **Permission scoping:** You choose which Aginera operations your agent may call, so it can create projects and run takeoffs while deleting a project or takeoff stays out unless you add it. Project and takeoff ids travel in the URL path (`/projects/{project_id}`), so a rule can also pin the agent to one project.
- **Credential handling:** Your Aginera credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'run a takeoff' or 'export a takeoff', and Jentic returns the matching Aginera operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Box** — Box stores and versions the drawing files a takeoff runs against.
- **Airtable** — Airtable holds extracted quantities as structured, queryable records.
- **Asana** — Asana tracks the project tasks around a construction estimate.

## FAQ

### What authentication does the Aginera API use?

The Aginera API authenticates with OAuth 2.0 per its OpenAPI spec, using the oauth2 client-credentials flow for backends and authorization-code with PKCE for interactive use, with granular scopes such as projects:read and takeoffs:run. The access token is sent as a bearer token. Through Jentic the token is injected at call time rather than living in the agent's prompt.

### Can I extract measured quantities from a drawing with the Aginera API?

Yes. Running a takeoff on a document returns extracted items, measured routes like conduit, feeder, duct, pipe, and tray with endpoints and geometry, and detected schedules, plus totals by trade, category, and unit. You can accept, reject, or override items while the raw extraction stays immutable.

### What are the rate limits for the Aginera API?

The OpenAPI spec does not specify rate limits, though takeoffs and exports consume credits and long-running work is polled. Check the Aginera developer documentation at https://aginera.ai/docs/developer for current limits and credit costs.

### How do I run a takeoff with the Aginera API through Jentic?

Search Jentic for 'run a takeoff on a drawing' and it returns the takeoff operation with its input schema. Your agent creates a project, adds the document, starts the takeoff, and polls it until the summary is ready. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Can I limit what my agent is allowed to do with the Aginera API?

Yes. Write a rule that allows only the read and takeoff-run operations, so the agent can run takeoffs and read results while deleting a project or takeoff stays out unless you add it, and every action it takes is logged. Because project and takeoff ids appear in the URL path, a rule can also pin the agent to one project.

### Is there an Aginera MCP server?

You don't need an MCP server to give your agent the Aginera API. Jentic connects it directly from the API Directory: import it, store your credential once, and your agent calls the project, document, takeoff, and export operations on demand without loading another server's tool definitions into its context.
