canonical: https://jentic.com/apis/omniaauto.ca/omniaauto

# Omniaauto Ca OmniaAuto — Canadian Vehicle Listings API

The OmniaAuto API searches live Canadian vehicle listings and returns each one in a fixed column set covering VIN, model year, make, model, trim, mileage, price, initial price, days on market, dealer, and location. It looks up a VIN in the market with optional inline decode and valuation, decodes a VIN to its full spec, values a vehicle from 30-day Canadian comparables, and breaks market statistics down by city, trim, year, or condition. Safety recalls come from Transport Canada and NHTSA kept separate, a payment calculator adds provincial vehicle tax to a financing estimate, and saved-query webhooks push newly matching listings to your URL with an HMAC signature.

## For AI agents

Search Canadian vehicle listings near a city or postal code, look up and decode a VIN, value a vehicle from recent comparables, check recalls, and estimate monthly payments with provincial tax.

## Scope

Does not sell vehicles, originate auto loans, or provide vehicle history reports such as accident records. Use for Canadian vehicle listings, VIN lookups, valuations, recalls, and payment estimates only.

## Capabilities

- Search Canadian listings by make, model, trim, year range, province, price and mileage range, or near a city or postal code within radius_km
- Look up a VIN in the live market and add decode and valuation inline with expand
- Value a vehicle by year, make, model, and condition from 30-day Canadian comparables, with low, average, median, and high prices
- Break market statistics down by city, trim, year, or condition with group_by
- Check open safety recalls for a make, model, and year from Transport Canada and NHTSA, filtered with source
- Estimate a monthly payment with provincial vehicle tax from a price or a listing vin, an apr, and a term_months
- Register a saved-query webhook that posts newly matching listings with an X-Omnia-Signature HMAC header

## Use cases

### Car-shopping assistant agent

A buyer's agent finds cars that match a brief and checks them before recommending one. Through Jentic it searches for 'search Canadian vehicle listings', loads the OmniaAuto listings operation, and calls it with make, model, price_max, near, and radius_km, with the bearer key attached at call time. It then looks up the chosen VIN with expand set to decode and valuation and checks recalls for the model year before reporting back.

Example prompt: Call GET `/v1/listings` with make 'Toyota', model 'RAV4', condition 'used', price_max 30000, near 'Edmonton', and radius_km 50, then call GET `/v1/vin/{vin}` with expand 'decode,valuation' on the cheapest result

### Dealer pricing and market analysis

A dealer pricing a trade-in or a new arrival needs local comparables. GET `/v1/valuation` returns low, average, median, and high prices from 30-day Canadian comps for a year, make, model, and condition, with optional province, trim, and mileage. GET `/v1/market` breaks a slice down by city or trim with group_by, returning counts, average and median prices, and average mileage, flagging small samples with low_sample.

Example prompt: Call GET `/v1/valuation` with year 2021, make 'Honda', model 'Civic', condition 'used', and province 'ON', then GET `/v1/market` with make 'Honda', model 'Civic', province 'ON', and group_by 'trim'

### Recall and payment checks before purchase

Before a buyer commits, a tool can check open safety recalls from Transport Canada, which is authoritative for Canadian vehicles, alongside NHTSA campaigns kept separate for US context. It can then estimate the monthly payment with GET `/v1/payment`, passing a vin from a live listing so price, province, and condition fill in, plus the apr and term_months the buyer expects.

Example prompt: Call GET `/v1/recalls` with make 'Ram', model '1500', and year 2019, then GET `/v1/payment` with the listing vin, apr 6.9, and term_months 72

### New-listing alerts by webhook

Instead of polling for new stock, POST `/v1/webhooks` registers a saved search and a URL, and OmniaAuto posts each newly matching listing in the same schema as the listings endpoint, signed with an X-Omnia-Signature HMAC header. PATCH `/v1/webhooks/{id}` changes the query or pauses it without losing the delivery position, and GET `/v1/webhooks/{id}/deliveries` shows each attempt with the HTTP status your endpoint returned.

Example prompt: POST `/v1/webhooks` with url 'https://example.com/hooks/cars' and a query for make 'Subaru' and model 'Outback' in province 'BC', then check GET `/v1/webhooks/{id}/deliveries` after the first delivery

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/v1/listings` | Search listings |
| GET | `/v1/vin/{vin}` | Look up a VIN in the market |
| GET | `/v1/decode/{vin}` | Decode a VIN |
| GET | `/v1/valuation` | Value a vehicle from comparables |
| GET | `/v1/market` | Get market statistics |
| GET | `/v1/recalls` | Get safety recalls |
| GET | `/v1/payment` | Estimate a monthly payment |
| POST | `/v1/webhooks` | Register a saved-query webhook |

## Key resources

- **Listings** — Live Canadian vehicle listings with search, proximity filters, cursor pagination, and a bulk feed
- **VIN** — Market lookup by VIN and full VIN decode
- **Market and valuation** — Market statistics by slice and valuations from 30-day comparables
- **Recalls and payments** — Transport Canada and NHTSA recalls, and monthly payment estimates with provincial tax
- **Webhooks** — Saved-query subscriptions that push newly matching listings, with delivery history

## 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:** 55 / 100
- **Maturity:** Foundational
- **Dimensions:**
  - Foundational Compliance: 85 / 100
  - Developer Experience & Jentic Compatibility: 62 / 100
  - AI-Readiness & Agent Experience: 30 / 100
  - Agent Usability: 94 / 100
  - Security: 60 / 100
  - AI Discoverability: 76 / 100
- **View full report:** https://jentic.com/apis/omniaauto.ca/omniaauto/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 OmniaAuto by hand means sending a bearer key, reading per-second and monthly quota headers, walking listings with keyset cursors, and verifying webhook HMAC signatures. Through Jentic you install once, import OmniaAuto from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** OmniaAuto puts the webhook id in the URL path (`/v1/webhooks/{id}`), so a rule can pin your agent to one saved-query webhook and the operations you pick on it. You choose the operations, so ones like deleting a webhook or pulling the bulk feed are not included unless you add them.
- **Credential handling:** Your OmniaAuto API key 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 'search Canadian vehicle listings' or 'value a used vehicle', and Jentic returns the matching OmniaAuto operation with its input schema, including make, model, near, and radius_km, so the agent calls it correctly.

## Related APIs

- **MarketCheck Automotive Data API** — North American vehicle listings, history, and market data
- **CarsXE Vehicle Data API** — VIN decoding, specs, and vehicle history data
- **NHTSA Vehicle API (vPIC)** — US government VIN decoding and vehicle make and model data

## FAQ

### What authentication does the OmniaAuto API use?

Per its OpenAPI spec, the OmniaAuto API uses HTTP bearer authentication with your API key sent as Authorization: Bearer followed by the key. Three routes are open without a key: `/v1/health`, `/v1/status`, and `/v1/quality.` Through Jentic the key is stored by your own instance and attached at call time, so the agent never handles it.

### Can I search listings near a city or postal code?

Yes. GET `/v1/listings` takes near, which accepts a Canadian city, a postal code or FSA, or coordinates, paired with radius_km. Every result carries distance_km, and sort can be set to distance. Listings are one row per listing, so a vehicle posted at several locations appears once per location; deduplicate on vin for one row per vehicle.

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

Per the spec, every authenticated response carries X-RateLimit headers for the per-second bucket and X-Quota-Limit, X-Quota-Remaining, and X-Quota-Reset for the monthly call allowance, with X-Quota-Policy saying whether passing it is a hard stop or billed as overage. GET `/v1/usage` returns this month's call count and allowance.

### Is there an OmniaAuto MCP server?

Yes. OmniaAuto describes a hosted MCP server in its spec, with per-call listing caps and monthly allowances. You can also connect it directly through Jentic: your agent gets the full 19-endpoint surface from the spec without loading another server's tool definitions into its context, your key is injected at call time by your self-hosted instance instead of living in an MCP config, and your rules decide which operations the agent may call.

### How do I value a vehicle through Jentic?

Search Jentic for 'value a used vehicle in Canada', load the OmniaAuto valuation operation, and execute it with the required year, make, model, and condition, plus optional province, trim, and mileage. The response gives low, average, median, and high prices from 30-day Canadian comps. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Does the OmniaAuto API merge Transport Canada and NHTSA recalls?

No. GET `/v1/recalls` returns open recalls from both registers but never merges them: Transport Canada is authoritative for a Canadian vehicle and NHTSA is supplementary US context. Pass source with canada or us to limit the result to one register, and read GET `/v1/recalls/status` to see when each source was last checked.

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

Yes. Write a rule that allows only GET `/v1/listings`, GET `/v1/valuation`, and GET `/v1/recalls`, and the agent can search, value, and check recalls but cannot register or delete webhooks or pull the bulk feed, and every call it makes is logged.
