Skip to main content
POST
Onboard
Already integrated against /onboard-site-and-asset? It’s still supported, but we’d recommend migrating to /onboard when convenient.

Handling failures

A 200 response always means the site and assets were stored and the site is enrolled. enrolment.status only tells you whether the enrolment was new (enrolled) or already in place (already_enrolled). An unsuccessful onboarding returns an HTTP error instead. The call is atomic, so on any error nothing is persisted: no site, no assets, no enrolment. Fix the cause and send the same request again. Rate limiting and request-body validation errors behave as on every other endpoint.

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Body

application/json

Request model for the onboard endpoint.

site
SiteRequest · object
required

Site information

Example:
assets
OnboardingAssetRequest · object[]
required

One or more assets to register at the site

Example:
proposition
enum<string>
required

Proposition to enrol the site in

Available options:
limited_pause,
full_asset_schedule_control,
price_curve
Example:

"limited_pause"

override_withdrawal
boolean
default:false

Set to true to re-enrol regardless of previous withdrawals.

Example:

false

Response

Site and assets persisted, site enrolled in proposition

Response model for the onboard endpoint.

site
InitialiseSiteResult · object
required

Site result metadata

assets
InitialiseAssetResult · object[]
required

Per-asset result metadata

enrolment
EnrolResponse · object
required

Enrolment result