Energy Machines · REST · OpenAPI 3.1.0
REST API reference
Read-only JSON over HTTPS GET. No account or API key. Every endpoint returns the same data as the MCP tool with the same name.
https://heatpumps.energymachines.com/api/public/v1 · OpenAPI 3.1 document
GET/families
List public families containing published products. Use their stable slugs in the family filter.
MCP tool: list_product_families
Parameters
No parameters besides locale and measurement_system.
| Name | In | Type | Required |
|---|---|---|---|
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/families'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
GET/products
Search published products. Numeric filters use canonical kW and degrees C. Follow next_offset; confirm design-point performance with the manufacturer.
MCP tool: search_products
Parameters
| Name | In | Type | Required |
|---|---|---|---|
offsetZero-based offset; follow next_offset until null to retrieve all results. | query | integer (≥ 0; default 0) | No |
limitPage size, subject to the server's configurable MCP_MAX_PAGE_SIZE. | query | integer (default 25) | No |
familyExact family slug from list_product_families. | query | string | No |
applicationExact application token from catalogue overview filter_options. | query | string | No |
use_caseExact use_case token from catalogue overview filter_options. | query | string | No |
refrigerantExact refrigerant token, e.g. R290; case insensitive. | query | string | No |
compressor_typeExact compressor_type token from catalogue overview. | query | string | No |
min_heating_capacity_kwMinimum nominal heating capacity in canonical kW; nominal figures are not design-point guarantees. | query | number (≥ 0) | No |
max_heating_capacity_kwMaximum nominal heating capacity in canonical kW. | query | number (≥ 0) | No |
min_supply_temp_cRequired minimum maximum condenser outlet/supply temperature, degrees C. Selects products whose upper limit is at least this value. | query | number | No |
min_source_temp_cLowest available source/inlet temperature at your site, degrees C. Selects products whose lowest permitted inlet is <= this value. This does not guarantee simultaneous maximum supply temperature. | query | number | No |
queryCase-insensitive free text across published names, descriptions, slugs, family names and attribute values; all words must match. | query | string | No |
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/products?limit=2'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
GET/products/{slug}
Read a published product, flexible specifications, public media and documents. Missing values are unknown, never zero.
MCP tool: get_product
Parameters
| Name | In | Type | Required |
|---|---|---|---|
slugStable product slug returned by search_products; not a display name. | path | string | Yes |
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/products/{slug}'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
GET/products/compare
Compare the union of specification keys across published products; missing values are null.
MCP tool: compare_products
Parameters
| Name | In | Type | Required |
|---|---|---|---|
slugs | query | string[] | Yes |
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/products/compare?slugs={slug},{slug}'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
GET/documents
List public documents linked to published products; never the asset library or internal paths.
MCP tool: list_documents
Parameters
| Name | In | Type | Required |
|---|---|---|---|
offsetZero-based offset; follow next_offset until null to retrieve all results. | query | integer (≥ 0; default 0) | No |
limitPage size, subject to the server's configurable MCP_MAX_PAGE_SIZE. | query | integer (default 25) | No |
product_slugStable product slug returned by search_products; not a display name. | query | string | No |
doc_type | query | string | No |
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/documents?limit=2'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
GET/documents/{document_id}
Resolve a document still linked to a published product. Does not download its contents.
MCP tool: get_document_url
Parameters
| Name | In | Type | Required |
|---|---|---|---|
document_id | path | string | Yes |
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/documents/{document_id}'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
GET/cases
List published installation case studies with canonical URLs and public product reference text.
MCP tool: list_cases
Parameters
| Name | In | Type | Required |
|---|---|---|---|
offsetZero-based offset; follow next_offset until null to retrieve all results. | query | integer (≥ 0; default 0) | No |
limitPage size, subject to the server's configurable MCP_MAX_PAGE_SIZE. | query | integer (default 25) | No |
query | query | string | No |
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/cases?limit=2'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
GET/cases/{slug}
Read a published installation case, public media and converted flexible specifications.
MCP tool: get_case
Parameters
| Name | In | Type | Required |
|---|---|---|---|
slug | path | string | Yes |
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/cases/{slug}'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
GET/company
Read only known public company, technology, history and contact sections.
MCP tool: get_company_info
Parameters
No parameters besides locale and measurement_system.
| Name | In | Type | Required |
|---|---|---|---|
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/company'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
GET/inquiry
Explain human-reviewed inquiry preparation. No drafts, email sending or submissions are performed.
MCP tool: how_to_inquire
Parameters
| Name | In | Type | Required |
|---|---|---|---|
product_slugStable product slug returned by search_products; not a display name. | query | string | No |
localeLocale code from the catalogue overview resource (Locale table). Omit for the default locale; missing translations use the site's fallback. | query | string | No |
measurement_systemMeasurementSystem code from the catalogue overview resource, e.g. metric or imperial when configured. Omit for the first configured system. Numeric filter inputs always use kW and degrees C. | query | string | No |
Example request
curl 'https://heatpumps.energymachines.com/api/public/v1/inquiry'Responses
| Status | |
|---|---|
200 | Same JSON value as the MCP structuredContent.result. |
304 | Representation matches If-None-Match. |
400 | Invalid parameters (Zod summary in issues). |
404 | Published entity not found. |
405 | Method not allowed. |
429 | Rate limit exceeded; Retry-After gives seconds. |
500 | Catalogue temporarily unavailable. |
Terms of use
Use public catalogue data for engineering discovery and cite the canonical product and document URLs. Respect caching and Retry-After. Availability and specifications may change. Confirm duty, source/supply temperatures, fluids and simultaneous operating conditions with Energy Machines before design or procurement. This service offers no performance guarantee.