canonical: https://jentic.com/apis/engineroom.com.au/engineroom

# EngineRoom API

EngineRoom is an Australian sales and lead management platform used by dealerships and high-volume sales teams to capture leads, attribute them to salespeople, and progress opportunities to closed sales. The API exposes lead capture, sale recording, user lookup, and webhook subscription endpoints so external systems can push enquiries into EngineRoom and react to pipeline events. It is a focused integration surface rather than a full CRM API: seven endpoints cover the core write paths most marketing and lead-gen systems need to wire into the platform.

## For AI agents

Push leads and recorded sales into the EngineRoom dealership CRM and subscribe webhooks for downstream pipeline events.

## Scope

Does not handle marketing automation, full contact management, or finance workflows - use for dealership lead capture, sale recording, and webhook subscriptions only.

## Capabilities

- Submit a captured lead with contact details and source attribution to EngineRoom
- Retrieve a specific lead by ID to confirm successful capture or check assignment
- Record a closed sale against the associated lead and salesperson
- Look up the authenticated API user with the /me endpoint to verify token scope
- Register a webhook URL so external systems are notified when EngineRoom records change
- Remove a webhook subscription by ID when an integration is decommissioned

## Use cases

### Web Form to CRM Lead Capture

Forward enquiries from marketing landing pages and dealership websites directly into EngineRoom by calling POST /leads with the captured contact details and source attribution. The lead becomes available for assignment and follow-up inside EngineRoom within seconds, eliminating manual re-keying. Most teams wire this up with a single serverless function in under an hour.

Example prompt: Send a POST /leads request with the contact's name, email, phone, and source 'website-quote-form' and confirm the response returns a new lead ID.

### Sale Confirmation from External Order System

When a deal closes in an external order or finance system, post the confirmation back into EngineRoom via POST /sales so the dealership has accurate close-rate reporting in one place. The API ties the sale to the originating lead, supporting commission and source attribution. Useful for dealerships running EngineRoom alongside a separate finance and insurance system.

Example prompt: Call POST /sales with the leadId, saleAmount, and closedDate to record a $32,500 sale tied to lead 4471.

### Pipeline Event Webhook Fan-Out

Register webhook URLs via POST /webhooks so downstream systems such as data warehouses, Slack channels, or email tools react in real time when leads are created or updated. Webhooks remove the need for polling and are the standard way to keep secondary systems in sync with EngineRoom. Subscriptions can be removed any time via DELETE `/webhooks/{id}.`

Example prompt: Register a webhook by calling POST /webhooks with target_url 'https://hooks.example.com/engineroom' and verify the subscription appears in the response.

### AI Agent Lead Triage Through Jentic

An AI agent uses Jentic to discover the EngineRoom POST /leads operation by intent, loads its schema, and writes captured enquiries from chat or email into the dealership pipeline without a developer hard-coding the integration. Token isolation through your Jentic One instance keeps the EngineRoom bearer token out of the agent context. End-to-end wiring takes well under an hour.

Example prompt: Search Jentic for 'create a lead in EngineRoom', load the operation schema, and execute it with the captured contact details from a chat conversation.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/leads` | Create a new lead from an external capture source |
| GET | `/leads/{id}` | Retrieve a lead by its identifier |
| POST | `/sales` | Record a closed sale tied to a lead |
| GET | `/me` | Return the authenticated API user |
| POST | `/webhooks` | Register a webhook subscription |
| DELETE | `/webhooks/{id}` | Remove a webhook subscription |

## Key resources

- **Leads** — Create and retrieve lead records that drive the EngineRoom sales pipeline.
- **Sales** — Record closed sales tied back to the originating lead and salesperson.
- **Users** — Look up the authenticated API user via /me to verify token identity and scope.
- **Webhooks** — Subscribe and unsubscribe URLs to receive real-time notifications about pipeline events.

## Why Jentic

- **Setup:** Wiring the EngineRoom API by hand means handling its bearer auth, formatting lead, sale, and webhook calls, and building your own error handling against https://api2.engineroom.com.au/public. Through Jentic you install once, import the EngineRoom API from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** The EngineRoom API puts the lead id in the URL path (`/leads/{id}`), so a rule can pin your agent to one lead: it can read that lead and nothing else. You choose the operations it may call, so ones like recording a sale or deleting a webhook are not included unless you add them.
- **Credential handling:** Your EngineRoom token 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 'capture a dealership lead' or 'read a lead record', and Jentic returns the matching EngineRoom operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **HubSpot** — General-purpose CRM with a much broader API surface than EngineRoom
- **Pipedrive** — Pipeline-first CRM with a richer deal and activity API
- **Calendly** — Schedule a sales appointment after capturing a lead in EngineRoom

## FAQ

### What authentication does the EngineRoom API use?

The EngineRoom API uses HTTP bearer token authentication. Each request must include an Authorization header with a bearer token issued from the EngineRoom dashboard. When called through Jentic, the token is stored in your Jentic One instance and never enters the agent's context.

### Can I create leads programmatically with the EngineRoom API?

Yes. POST /leads accepts a captured contact and writes a new lead record into the EngineRoom pipeline. The response includes the lead ID, which can be used in a follow-up GET `/leads/{id}` call to confirm the capture and check assignment.

### Does the EngineRoom API support real-time event notifications?

Yes. Register subscriptions with POST /webhooks and EngineRoom will deliver event payloads to your configured URL. Remove a subscription any time with DELETE `/webhooks/{id}.` There is no need to poll for changes.

### What are the rate limits on the EngineRoom API?

The OpenAPI spec does not declare explicit rate limits. EngineRoom applies fair-use throttling at the platform level; if you need higher sustained throughput for bulk lead capture, contact EngineRoom support before running large imports.

### How do I record a closed sale through Jentic?

Search Jentic for 'record a sale in EngineRoom', load the POST /sales operation schema, and execute it with the leadId, saleAmount, and closedDate. Get started with Jentic One, the self-hosted execution layer.

### How do I verify my EngineRoom API token is working?

Call GET /me. The endpoint returns the user attached to the bearer token, so a 200 response confirms the token is valid and shows which user the integration is authenticating as.

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

Yes. Jentic One is self-hosted by you, so your own rules decide which EngineRoom operations and credentials the agent may use. Because the lead id sits in the URL path at GET `/leads/{id}`, a rule can pin the agent to a single lead so it reads only that record and nothing else. You choose the operations it can call, so write paths like POST /leads, POST /sales, and DELETE `/webhooks/{id}` stay off limits unless you explicitly add them.
