Skip to content

Developers

Ducto's API, version 1.0.0: sizing, installation, permits and money for residential heat pumps, as an API.

Start here

  1. Get a sandbox key: partners on the partner dashboard, distributors on Supplier → Organization. New to Ducto? Get in touch.
  2. Call https://www.ducto.org/api/v1 with Authorization: Bearer <key>. Sandbox keys start dk_test_, live keys dk_live_; every response says which in Ducto-Mode.
  3. Send an Idempotency-Key with every POST (8 to 128 characters, new for each new request). A retry with the same key and body gets the first answer back for 24 hours; the same key with a different body is refused.
  4. Run a whole project in the sandbox in minutes, then switch to a live key.

Guides

The contract

  • OpenAPI 3.1: /api/v1/openapi.json, rendered in the API reference.
  • TypeScript SDK: @ducto/sdk (packages/sdk), generated from the contract: typed calls, idempotency keys made for you, errors with stable codes, and webhook signature checks.
  • Errors are RFC 9457 problems (application/problem+json) with a stable code; show people the detail.
  • Versioning: within v1, changes are additive only (new endpoints, new optional fields, new values). A deprecated endpoint keeps working at least 12 months and says so in Deprecation and Sunset headers. See the changelog.
  • Limits: 60 requests a minute per mode unless your agreement says otherwise; 429 responses carry Retry-After.
  • Health and targets: status.
Developers | Ducto