# EquipmentWatch > EquipmentWatch (a Fusable brand, operated by Randall-Reilly, LLC) publishes construction and > heavy-equipment data APIs: equipment taxonomy, machine specifications, Fair Market / Forced > Liquidation / Orderly Liquidation values, retail rental rates, Rental Rate Blue Book ownership > and operating cost recovery rates, and serial-number year-of-manufacture verification. ## What this API does One REST API, 24 published GET operations, seven data domains. It is read-only: nothing in the published contract creates, modifies or deletes anything. Typical consumers embed it into bid estimation software, fleet management systems, collateral valuation at lenders, and underwriting at insurers. ## How to call it - Base URL (production): `https://equipmentwatchapi.com/v1` - Base URL (sandbox): `https://sandbox.equipmentwatchapi.com/v1` - Auth: `x-api-key: ` request header. Required on every operation. - Getting a key: no self-service signup. Submit the "Request an API key" form linked from https://equipmentwatch.com/api/ — access is sales-negotiated. - Pagination: `offset` (integer, min 0, default 0) and `limit` (integer, 1-50, default 50). There is no total count or next-page link in the response; page until a short page returns. - Errors: HTTP 401 with `{"errorCode":10,"errorMessage":"Invalid API Key",...}`. Not RFC 9457. Unmatched routes return an HTML error page, not JSON — do not blindly parse an error body. - Rate limits: none documented, no rate-limit headers observed. Design conservatively. ## Operations ### Taxonomy — the join keys for everything else - `GET /taxonomy/classifications` — top-level equipment classifications - `GET /taxonomy/categories` — categories (Excavators, Graders, Compactors, Aerial Lifts) - `GET /taxonomy/subtypes` — subtypes within a category - `GET /taxonomy/sizes` — size classes within a subtype - `GET /taxonomy/manufacturers` — equipment OEMs - `GET /taxonomy/models` — models, with alias normalisation. Start here to resolve a `modelRdbId`. ### Values - `GET /values/value` — FMV / FLV / OLV for a model, year and condition - `GET /values/trending` — trended value history - `GET /values/options` — options and extras that adjust a valuation - `GET /values/options/families` — families grouping those options - `GET /values/condition` — condition bands (Excellent, Very Good, Good, Fair, Poor) - `GET /values/region` — regions with region-adjusted values ### Specifications - `GET /specs/basic` — specifications grouped by component (engine, hydraulics, axles, fluids) - `GET /specs/dimensions` — weights and dimensions, for shipping estimation ### Rental - `GET /rental/rentalrates` — national and regional daily / weekly / monthly retail rental rates - `GET /rental/rentalhouserates` — rates for a specific rental house - `GET /rental/rentalhouses` — rental houses carried in the corpus - `GET /rental/rentalhousetaxonomy` — a rental house's own taxonomy, for mapping ### Verification - `GET /verification/serialnumberverification` — serial number to year of manufacture ### Cost - `GET /cost/configurations` — build configurations for a model - `GET /cost/cost-recovery` — Rental Rate Blue Book ownership / operating cost recovery + FHWA rate - `GET /cost/icr` — internal charge rates from user-supplied cost factors ### Bulk - `GET /bulk/manufacturers` — full manufacturer corpus - `GET /bulk/models` — full model corpus. Use these to seed a mirror instead of paging taxonomy. ## Shared query parameters Every filter is offered in an id form and a name form. Prefer the id form in machine use. `classificationId` / `classification`, `categoryId` / `category`, `subtypeId` / `subtype`, `sizeClassId` / `size`, `manufacturerId` / `manufacturer`, `modelId` / `model`, `year`, `condition` (enum), `date` (cost revision, YYYY-MM-DD), `configurationSequence`, `olvBasis`, `offset`, `limit`. ## Identifiers Everything is keyed by integer RDB identifiers, and the same id works across every surface: `modelRdbId`, `manufacturerRdbId`, `categoryRdbId`, `equipmentSubtypeRdbId`, `equipmentSubtypeSizeRdbId`. Resolve a model once via Taxonomy, then reuse its `modelRdbId` against Values, Costs, Rental, Specs and Verification. ## Things an agent should know before integrating - **No response schemas are published.** `components/schemas` in the OpenAPI contains a single stub. Field names below come from the provider's own published response examples, not from a contract. Do not assume types, nullability or enums on the response side. - **Currency is never declared.** Values, costs and rental rates are bare numbers. USD is implied by the North American scope but never stated. - **Units live inside strings.** Specs return values like `"12 ft"` and `"138 hp"`; parse them. - **Two documented APIs are not in the contract.** The Market Data API (https://equipmentwatch.com/api/market-data/) and the Integration API (https://equipmentwatch.com/api/integration/) are documented on the website but carry no paths in the published OpenAPI. The Integration API is the only surface with write operations (POST saved models, POST groups) and its contract, idempotency and reversibility semantics are entirely undocumented. - **No SDKs, no CLI, no MCP server, no webhooks, no status page, no changelog.** Integration is raw HTTPS. See `packages/`, `mcp/` and `lifecycle/` in this repository for the probe records. ## Documentation - API overview: https://equipmentwatch.com/api/ - API reference (RapiDoc): https://docs.equipmentwatchapi.com/ - OpenAPI 3.0.3: https://docs.equipmentwatchapi.com/openapi.yaml - Request an API key: https://equipmentwatch.com/api/ - Support: https://equipmentwatch.com/contact-us/ · customerservice@equipmentwatch.com - Terms: https://equipmentwatch.com/legal/terms-of-service/ ## Profile This file was generated by API Evangelist as an independent third-party profile. Provider profile: https://apis.io/providers/equipmentwatch/