canonical: https://jentic.com/apis/evalumo.com/evalumo

# Evalumo API

Jentic publishes the only available OpenAPI specification for Evalumo API, keeping it validated and agent-ready. The Evalumo API is the REST interface for Evalumo, a construction project estimation platform used by contractors and tradespeople. It exposes endpoints for managing projects, exchanging OAuth-style tokens, retrieving user information, and listing exported project data. Authentication uses bearer tokens issued via an authorize/token/refresh flow at the api.evalumo.com host.

## For AI agents

Create construction estimation projects, retrieve user information and list exported project data on the Evalumo platform via bearer-token access.

## Scope

Does not handle invoicing, payment processing, or material catalogue management - use for managing Evalumo construction estimation projects and user information only.

## Capabilities

- Generate an authorization token via the /authorize endpoint as the first leg of the auth flow
- Exchange an authorization code for access and refresh tokens at the /token endpoint
- Refresh an expired access token using a refresh token
- Retrieve the authenticated user's profile and account information
- Create a new construction estimation project
- Update the status of an existing project
- List exported projects available to the authenticated user

## Use cases

### Project intake from website forms

Convert a new estimation enquiry from a contractor's website into an Evalumo project so the estimator can begin pricing immediately. POST /project creates the project, and PATCH `/project/{project_id}` updates its status as it moves through the estimating workflow. Integration takes under a day once OAuth bearer tokens are wired up.

Example prompt: POST /project with the project name and contact details from the form, then PATCH `/project/{project_id}` to set status to 'In Estimating'.

### Exported project archive

Pull the list of exported projects into an internal document store so estimating data is preserved beyond the Evalumo retention window. GET /exportedProject returns the list which can be enumerated and stored alongside contract paperwork for audit.

Example prompt: GET /exportedProject and write each entry's identifier and metadata into the firm's document management system.

### User-aware reporting

Build a dashboard that segments Evalumo project activity by the user who owns each one. GET /user returns the authenticated user's profile, which the dashboard pairs with the projects listing to attribute estimating work correctly.

Example prompt: GET /user, capture the user identifier, and use it as a join key against project records pulled from a separate reporting store.

### Agent-driven estimation workflow via Jentic

An AI agent receives a request for quote, creates an Evalumo project, and updates its status as the estimator progresses. Jentic stores the OAuth refresh token in your Jentic One instance and exchanges it for short-lived access tokens at execution time, so the agent never sees long-lived credentials.

Example prompt: Search Jentic for 'create an Evalumo project', load the schema for POST /project, and execute with the customer name and project description from the request.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/authorize` | Generate an authorization token |
| POST | `/token` | Exchange an authorization code for access and refresh tokens |
| POST | `/refreshToken` | Refresh an access token |
| GET | `/user` | Get the authenticated user's information |
| POST | `/project` | Create a new project |
| PATCH | `/project/{project_id}` | Update project status |
| GET | `/exportedProject` | List exported projects |

## Key resources

- **Authentication** — Authorize, token exchange and refresh-token endpoints
- **Projects** — Construction estimation projects with create, update and exported listings
- **Users** — Authenticated user profile information

## Why Jentic

- **Setup:** Wiring the Evalumo API by hand means running its authorize, token, and refreshToken exchange, carrying the bearer token, and shaping the construction-estimation project payloads yourself. Through Jentic you install once, import the Evalumo API from the API Directory, store the bearer credential once, and your agent calls it.
- **Permission scoping:** Evalumo puts the project id in the URL path (`/project/{project_id}`), so a rule can pin your agent to updating one project and nothing else. You choose the operations it may call, so creating new projects is not included unless you add it.
- **Credential handling:** Your Evalumo bearer and refresh tokens are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create an Evalumo project' or 'update a project', and Jentic returns the matching operation with its input schema so the agent calls the right endpoint without parsing the documentation portal.

## Related APIs

- **Xero Accounting API** — Push approved estimates into Xero as quotes or invoices for billing
- **HubSpot Account Info** — Sync Evalumo project status back into HubSpot deal stages
- **Pipedrive API** — Track estimating opportunities in a Pipedrive sales pipeline alongside Evalumo projects

## FAQ

### Why is there no official OpenAPI spec for Evalumo API?

Evalumo publishes a hosted documentation portal but no OpenAPI artefact for tooling. Jentic generates and maintains this spec so that AI agents and developers can call Evalumo API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Evalumo API use?

Evalumo uses bearer-token authentication. Tokens are obtained via the three-step /authorize, /token, /refreshToken flow defined in the spec. Through Jentic the refresh token is stored in your Jentic One instance and exchanged for a short-lived access token before each call.

### Can I create estimation projects with the Evalumo API?

Yes. POST /project creates a new construction estimation project, and PATCH `/project/{project_id}` updates its status as estimating progresses. There is no delete endpoint - projects are managed via status changes.

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

Rate limits are not declared in the OpenAPI spec. Evalumo applies per-account throttling via the bearer token; contact support for the limit that applies to your account if you plan high-volume integration.

### How do I create a project through Jentic?

Use the Jentic search query 'create an Evalumo project', which resolves to POST /project. Run pip install jentic, load the operation, and execute with the project payload - Jentic injects the bearer token from the vault.

### Can I download exported project data?

GET /exportedProject lists exported projects available to the authenticated user. The list endpoint returns metadata that an agent can use to fetch the actual export artefacts via Evalumo's hosted UI flow.

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

Yes. Because you run Jentic One yourself, your own rules decide which Evalumo operations and credentials the agent may use. Since Evalumo puts the project id in the URL path (PATCH `/project/{project_id}`), a rule can pin the agent to updating one specific project and nothing else. You choose the operations it may call, so creating projects with POST /project or listing exports with GET /exportedProject is excluded unless you explicitly allow it.
