Skip to main content
This tutorial walks you through onboarding your first site with a flexible asset (EV charger, battery, or heat pump) and retrieving a price curve. By the end, you’ll have a complete setup ready for price-based optimization.

Prerequisites

Step 1: Onboard your site and asset

The onboarding endpoint creates a site, asset, and dispatch consent in a single atomic operation. This ensures your setup is complete and ready for price-responsive operations.

Onboard site and asset

View the OpenAPI spec with interactive request examples and response schemas.

Example requests by asset type

Note that we do not require an explicit dispatch consent for price-curve based operation, so the dispatch_methods array is empty.
{
  "site": {
    "mpan": "1234567890123",
    "postcode": "SW1A 1AA",
    "street_address": "10 Downing Street",
    "gave_boundary_meter_consent_at": "2025-01-01T12:00:00Z"
  },
  "asset": {
    "external_id": "charger-001",
    "type": "charger",
    "properties": {
      "power_kw": 7.4
    }
  },
  "dispatch_consent": {
    "dispatch_methods": []
  }
}
Note that we do not require an explicit dispatch consent for price-curve based operation, so the dispatch_methods array is empty.
{
  "site": {
    "mpan": "1234567890123",
    "postcode": "SW1A 1AA",
    "street_address": "10 Downing Street",
    "gave_boundary_meter_consent_at": "2025-01-01T12:00:00Z"
  },
  "asset": {
    "external_id": "battery-001",
    "type": "battery",
    "properties": {
      "power_kw": 5.0,
      "capacity_kwh": 13.5
    }
  },
  "dispatch_consent": {
    "dispatch_methods": []
  }
}
Note that we do not require an explicit dispatch consent for price-curve based operation, so the dispatch_methods array is empty.
{
  "site": {
    "mpan": "1234567890123",
    "postcode": "SW1A 1AA",
    "street_address": "10 Downing Street",
    "gave_boundary_meter_consent_at": "2025-01-01T12:00:00Z"
  },
  "asset": {
    "external_id": "heatpump-001",
    "type": "heat_pump",
    "properties": {
      "power_kw": 3.5,
      "cop": 3.2
    }
  },
  "dispatch_consent": {
    "dispatch_methods": []
  }
}
The API returns site.id and asset.id values - save the site.id for the next step. For more granular control of sites and assets, see the full Sites API Reference.

Step 2: Retrieve the price curve

Once you’re site is onboarded, we will register it in the market. Once registered, you can start pulling half-hourly price curves to inform your optimization.
We’ll only populate the price curve once the asset is registered in the market; we will not expose prices until the asset is able to earn revenue. This typically takes 5 working days.

Get site price curve

View the full API documentation with request examples and response schemas.
Price curve timing
  • Current day prices: Available from the current settlement period until 23:00 UK time
  • Next day prices: Available from 14:00 UK time
  • Update frequency: Check for new prices after 14:00 for next-day optimization

Step 3: Offboard sites and assets

When a consumer withdraws consent or disconnects the asset, you should offboard the site to cleanly remove it and all associated assets from the Axle platform.

Offboard site and assets

View the API documentation for offboarding sites and their associated assets.
The offboarding endpoint removes the site and all associated assets in a single operation, ensuring:
  • All dispatch consents are revoked
  • Market positions are closed out appropriately
  • Asset and site data is archived according to retention policies
More granular control of assets is available via the Assets API. We offer a comprehensive API for asset management, including adding/removing individual assets and updating dispatch consents.