Changelog

Improved

System Loss Summary in Design Summary

The Retrieve Design Summary now includes system loss data — information previously only visible in the Aurora UI. For each step in the energy conversion chain, from incident irradiance through DC and AC output, you can see the value and its percentage loss relative to the preceding step. This makes it straightforward to identify where the largest losses occur in a design without leaving the API.

Improved

Eave height in Roof Summary

The Retrieve Roof Summary endpoint now includes an eave_height field for each roof face, reporting the height of the eave (gutter line) above the ground. Combined with the existing mean_height and pitch fields, this gives a more complete picture of each face's geometry for shading, permitting, and installation planning.

Improved

Restricted key endpoints are now editable

You can now update the endpoint access list on an existing restricted API key without needing to delete and recreate it. Open the three-dot menu on any restricted key and select Edit Endpoints to add or remove API actions and adjust any project-based tag scoping. The key value itself is unchanged.

Added

Utility Bills API

You can now upload, parse, and retrieve project utility bills through the Enterprise API. The Run Utility Bill Upload endpoint accepts a raw-binary body and dispatches an asynchronous parsing job, and the Retrieve Utility Bill Upload Status endpoint returns the job's progress. Once parsing completes, the List Utility Bills and Retrieve Utility Bill endpoints expose the parsed bill files on a project. Subscribe to the new utility_bill_upload_job_completed webhook event to be notified when a parsing job finishes (whether the bill was uploaded via API or via the in-app UI). The webhook payload supports <JOB_ID>, <UTILITY_BILL_ID>, <PROJECT_ID>, <STATUS>, and <SOURCE> URL attributes. Together, these endpoints enable fully automated utility bill ingestion workflows.

Improved

`financing_id` and `design_id` in `agreement_status_changed` Webhook

The agreement_status_changed webhook payload now includes <FINANCING_ID> and <DESIGN_ID> URL attributes. The financing ID corresponds to the selected financing option on the design. Both additions enable your downstream systems to associate agreement status changes with the correct design and financing product without making additional API calls.

Added

Docusign Agreements via Enterprise API

You can now create and manage Docusign-based agreements through the Enterprise API. The new Run Agreement Download URL Generation endpoint enables programmatic agreement generation using Docusign as the e-signature provider. Subscribe to the agreement_download_url_job_completed webhook to be notified when a Docusign agreement job completes, enabling fully automated contract workflows within your sales pipeline.

Added

Orders APIs and Webhooks

You can now manage the full lifecycle of consumer orders through the Enterprise API. New Orders endpoints let you list and retrieve orders (including customer details and a temporary download URL for the consumer's utility bill), update an order's phase, decline an order, mark an order as sold, record activity events against an order, and asynchronously convert an order into an Aurora project. Subscribe to the order_created webhook to react in real time — the payload includes both <ORDER_ID> and <UTILITY_BILL_URL> so you can ingest the utility bill the moment an order arrives. The project_created webhook and project endpoints also carry the originating order_id, so you can trace any project back to its source order.

AI Roof via API

You can now run AI Roof using the Sync API. This feature is supported by the following endpoints and webhooks: