{
"type": "https://api.kapa.energy/problems/invalid-time-window",
"title": "Invalid time window",
"status": 400,
"code": "invalid_time_window",
"detail": "end must be after start.",
"invalid_params": [
{
"name": "end",
"reason": "must be after start"
}
]
}
{
"type": "https://api.kapa.energy/problems/unauthorized",
"title": "Unauthorized",
"status": 401,
"code": "unauthorized",
"detail": "The access token has expired."
}
{
"type": "https://api.kapa.energy/problems/battery-not-found",
"title": "Battery not found",
"status": 404,
"code": "battery_not_found",
"detail": "No battery with id bat_9 is accessible to this client."
}
{
"type": "https://api.kapa.energy/problems/idempotency-key-in-use",
"title": "Idempotency key in use",
"status": 409,
"code": "idempotency_key_in_use",
"detail": "Retry once the original request has completed."
}
{
"type": "https://api.kapa.energy/problems/energy-out-of-range",
"title": "Energy out of range",
"status": 422,
"code": "energy_out_of_range",
"detail": "max_wh (15000) exceeds the usable capacity of this battery (13000 Wh).",
"invalid_params": [
{
"name": "max_wh",
"reason": "exceeds usable_capacity_wh"
}
]
}
Commands
Switch to self-consumption
Self-consumption: the battery stores on-site production surplus and discharges
to cover site consumption, to minimise grid import and export. Stored energy is
kept between min_wh and max_wh.
{
"type": "https://api.kapa.energy/problems/invalid-time-window",
"title": "Invalid time window",
"status": 400,
"code": "invalid_time_window",
"detail": "end must be after start.",
"invalid_params": [
{
"name": "end",
"reason": "must be after start"
}
]
}
{
"type": "https://api.kapa.energy/problems/unauthorized",
"title": "Unauthorized",
"status": 401,
"code": "unauthorized",
"detail": "The access token has expired."
}
{
"type": "https://api.kapa.energy/problems/battery-not-found",
"title": "Battery not found",
"status": 404,
"code": "battery_not_found",
"detail": "No battery with id bat_9 is accessible to this client."
}
{
"type": "https://api.kapa.energy/problems/idempotency-key-in-use",
"title": "Idempotency key in use",
"status": 409,
"code": "idempotency_key_in_use",
"detail": "Retry once the original request has completed."
}
{
"type": "https://api.kapa.energy/problems/energy-out-of-range",
"title": "Energy out of range",
"status": 422,
"code": "energy_out_of_range",
"detail": "max_wh (15000) exceeds the usable capacity of this battery (13000 Wh).",
"invalid_params": [
{
"name": "max_wh",
"reason": "exceeds usable_capacity_wh"
}
]
}
Unique value identifying this request (a UUID is recommended). Reuse the same
key and the same body when retrying. See Idempotency in the API description.
Lowest stored energy level, in Wh. Below it, the battery stops discharging to
cover site consumption. Omitted or null means the lowest level the
manufacturer allows.
Highest stored energy level, in Wh. Above it, the battery stops charging from
on-site production. Must be greater than or equal to min_wh and must not
exceed usable_capacity_wh. Omitted or null means the full usable capacity.
Required range: x >= 0
Response
Command accepted. Its status then evolves asynchronously.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Kapa Energy Battery API","colors":{"primary":"#16A34A","light":"#07C983","dark":"#15803D"},"favicon":"https://mintcdn.com/kapa-energy/2AleCt6EQQe9cMHB/favicon.svg?fit=max\u0026auto=format\u0026n=2AleCt6EQQe9cMHB\u0026q=85\u0026s=43feb583befd8bc21940444f24fab7d8","contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"kapa-energy","hasAudioNarration":false,"actualSubdomain":"kapa-energy","customDomains":[],"gitSource":{"type":"github","owner":"br-g","repo":"kapa-api","deployBranch":"main","contentDirectory":"docs","isPrivate":false,"mountPath":"","label":"","_id":"6af5f6ad6d281f8985c138db"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af5fa176d281f8985c176ac","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"Getting Started","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/commands/switch-to-self-consumption","slug":"/api-reference/commands/switch-to-self-consumption","pageMetadata":{"title":"Switch to self-consumption","description":"Self-consumption: the battery stores on-site production surplus and discharges\nto cover site consumption, to minimise grid import and export. Stored energy is\nkept between `min_wh` and `max_wh`.\n","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bat/v1/{id}/autoconsume","href":"/api-reference/commands/switch-to-self-consumption","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Self-consumption: the battery stores on-site production surplus and discharges\\nto cover site consumption, to minimise grid import and export. Stored energy is\\nkept between \", _jsx(_components.code, {\n children: \"min_wh\"\n }), \" and \", _jsx(_components.code, {\n children: \"max_wh\"\n }), \".\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Switch to self-consumption","description":"Self-consumption: the battery stores on-site production surplus and discharges\nto cover site consumption, to minimise grid import and export. Stored energy is\nkept between `min_wh` and `max_wh`.\n","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bat/v1/{id}/autoconsume","href":"/api-reference/commands/switch-to-self-consumption","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Commands"],"operationId":"autoconsumeBattery","summary":"Switch to self-consumption","description":"Self-consumption: the battery stores on-site production surplus and discharges\nto cover site consumption, to minimise grid import and export. Stored energy is\nkept between `min_wh` and `max_wh`.\n","parameters":["9f6ccd97-0198-434b-bee8-1ce2c7b88171"],"requestBody":"f2613bf3-681a-4d6e-a640-f9fa84126cf2","responses":{"202":"e5e5bd60-1502-41de-942c-05b8aaeb5cf8","400":"87e7e099-d2c6-41e1-b8aa-feb5e3e4a8a9","401":"aab5a7a8-688f-4cec-82c4-e3ee84a31aa6","404":"95fd36d7-6e97-4590-81b7-92e46860fdbd","409":"1a1072d1-e503-4bc5-ba95-ca3232071a23","422":"40ed2449-b165-41a0-89c0-eda792ba1632"},"method":"post","type":"path","servers":["2b930e37-df3c-4ce7-8c09-1e5db810139c"],"security":["c2e4e0f7-3540-4425-897d-7de72a89b5df"],"path":"/bat/v1/{id}/autoconsume","baseUrlOptions":["https://api.kapa.energy"],"title":"Switch to self-consumption","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"9f6ccd97-0198-434b-bee8-1ce2c7b88171":{"name":"Idempotency-Key","in":"header","required":false,"description":"Unique value identifying this request (a UUID is recommended). Reuse the same\nkey and the same body when retrying. See Idempotency in the API description.\n","schema":{"type":"string","maxLength":255,"isRequired":false,"description":"Unique value identifying this request (a UUID is recommended). Reuse the same\nkey and the same body when retrying. See Idempotency in the API description.\n","uniqueKey":"","typeLabel":"string"},"example":"7c1e4a90-5b2d-4f8e-9a31-0d6c2e8b1f47"},"041f3530-3502-4c62-9135-b0ae09ea10cc":{"name":"id","in":"path","required":true,"description":"Battery identifier.","schema":{"type":"string","isRequired":true,"description":"Battery identifier.","uniqueKey":"","typeLabel":"string"},"example":"bat_1"}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"start":{"oneOf":[{"type":"string","format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?Z$","description":"Start of the command (inclusive). Omitted or null means as soon as possible.","uniqueKey":"start.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?Z$","description":"Start of the command (inclusive). Omitted or null means as soon as possible.","uniqueKey":"start.oneOf.1","typeLabel":"null"}],"uniqueKey":"start","typeLabel":"string\u003cdate-time> | null"},"end":{"oneOf":[{"type":"string","format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?Z$","description":"End of the command (exclusive). Omitted or null means until cancelled or superseded.","uniqueKey":"end.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?Z$","description":"End of the command (exclusive). Omitted or null means until cancelled or superseded.","uniqueKey":"end.oneOf.1","typeLabel":"null"}],"uniqueKey":"end","typeLabel":"string\u003cdate-time> | null"},"min_wh":{"oneOf":[{"type":"integer","minimum":0,"description":"Lowest stored energy level, in Wh. Below it, the battery stops discharging to\ncover site consumption. Omitted or null means the lowest level the\nmanufacturer allows.\n","uniqueKey":"min_wh.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":0,"description":"Lowest stored energy level, in Wh. Below it, the battery stops discharging to\ncover site consumption. Omitted or null means the lowest level the\nmanufacturer allows.\n","uniqueKey":"min_wh.oneOf.1","typeLabel":"null"}],"uniqueKey":"min_wh","typeLabel":"integer | null"},"max_wh":{"oneOf":[{"type":"integer","minimum":0,"description":"Highest stored energy level, in Wh. Above it, the battery stops charging from\non-site production. Must be greater than or equal to `min_wh` and must not\nexceed `usable_capacity_wh`. Omitted or null means the full usable capacity.\n","uniqueKey":"max_wh.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":0,"description":"Highest stored energy level, in Wh. Above it, the battery stops charging from\non-site production. Must be greater than or equal to `min_wh` and must not\nexceed `usable_capacity_wh`. Omitted or null means the full usable capacity.\n","uniqueKey":"max_wh.oneOf.1","typeLabel":"null"}],"uniqueKey":"max_wh","typeLabel":"integer | null"}},"uniqueKey":"","typeLabel":"object"},"example":{"start":"2026-11-12T08:00:00Z","end":"2026-11-12T17:00:00Z","min_wh":2600,"max_wh":13000},"examples":{"Example":{"title":"Example","value":{"start":"2026-11-12T08:00:00Z","end":"2026-11-12T17:00:00Z","min_wh":2600,"max_wh":13000}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"e5e5bd60-1502-41de-942c-05b8aaeb5cf8":{"description":"Command accepted. Its status then evolves asynchronously.","content":{"application/json":{"schema":{"type":"object","required":["command_id","battery_id","action","parameters","start","end","status","status_reason","batch_id","created_at","updated_at"],"properties":{"command_id":{"type":"string","description":"Command identifier.","isRequired":true,"uniqueKey":"command_id","typeLabel":"string"},"battery_id":{"type":"string","description":"Battery identifier.","isRequired":true,"uniqueKey":"battery_id","typeLabel":"string"},"action":{"type":"string","enum":["charge","discharge","autoconsume","idle"],"description":"- `charge`: charge the battery.\n- `discharge`: discharge the battery.\n- `autoconsume`: self-consumption.\n- `idle`: neither charge nor discharge.\n","isRequired":true,"uniqueKey":"action","typeLabel":"enum\u003cstring>"},"parameters":{"type":"object","description":"Action-specific parameters, as accepted. `charge` uses `allow_import` and\n`max_wh`; `discharge` and `autoconsume` use `min_wh` and `max_wh`; `idle` has none.\n","properties":{"allow_import":{"type":"boolean","uniqueKey":"parameters.allow_import","typeLabel":"boolean"},"min_wh":{"oneOf":[{"type":"integer","minimum":0,"uniqueKey":"parameters.min_wh.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":0,"uniqueKey":"parameters.min_wh.oneOf.1","typeLabel":"null"}],"uniqueKey":"parameters.min_wh","typeLabel":"integer | null"},"max_wh":{"oneOf":[{"type":"integer","minimum":0,"uniqueKey":"parameters.max_wh.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":0,"uniqueKey":"parameters.max_wh.oneOf.1","typeLabel":"null"}],"uniqueKey":"parameters.max_wh","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"parameters","typeLabel":"object"},"start":{"type":"string","format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?Z$","description":"Effective start (inclusive). If the request omitted `start`, or gave a time\nin the past, this is the time Kapa accepted the command.\n","examples":["2026-11-12T18:00:00Z"],"isRequired":true,"uniqueKey":"start","typeLabel":"string\u003cdate-time>"},"end":{"oneOf":[{"type":"string","format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?Z$","description":"End (exclusive). Null means open-ended, until cancelled or superseded.","isRequired":true,"uniqueKey":"end.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?Z$","description":"End (exclusive). Null means open-ended, until cancelled or superseded.","isRequired":true,"uniqueKey":"end.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"end","typeLabel":"string\u003cdate-time> | null"},"status":{"type":"string","enum":["pending","scheduled","active","completed","cancelled","superseded","failed"],"description":"- `pending`: accepted by Kapa, not yet acknowledged by the manufacturer's cloud.\n- `scheduled`: acknowledged by the manufacturer; `start` is in the future.\n- `active`: in effect on the battery.\n- `completed`: the window ended normally.\n- `cancelled`: cancelled with `cancel_command`.\n- `superseded`: the whole window is covered by more recent commands.\n- `failed`: the command could not be applied; see `status_reason`.\n","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"status_reason":{"oneOf":[{"type":"string","description":"Machine-readable reason when `status` is `failed`, e.g. `oem_rejected`,\n`oem_unreachable`, `battery_offline`. Null otherwise.\n","isRequired":true,"uniqueKey":"status_reason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Machine-readable reason when `status` is `failed`, e.g. `oem_rejected`,\n`oem_unreachable`, `battery_offline`. Null otherwise.\n","isRequired":true,"uniqueKey":"status_reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"status_reason","typeLabel":"string | null"},"batch_id":{"oneOf":[{"type":"string","description":"Identifier of the batch that created the command. Null for single commands.","isRequired":true,"uniqueKey":"batch_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Identifier of the batch that created the command. Null for single commands.","isRequired":true,"uniqueKey":"batch_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"batch_id","typeLabel":"string | null"},"created_at":{"type":"string","format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?Z$","description":"When Kapa accepted the command.","examples":["2026-11-12T18:00:00Z"],"isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,9})?Z$","description":"Last status change.","examples":["2026-11-12T18:00:00Z"],"isRequired":true,"uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"","typeLabel":"object"},"example":{"command_id":"cmd_611","battery_id":"bat_1","action":"autoconsume","parameters":{"min_wh":2600,"max_wh":13000},"start":"2026-11-12T08:00:00Z","end":"2026-11-12T17:00:00Z","status":"pending","status_reason":null,"batch_id":null,"created_at":"2026-11-12T07:45:12Z","updated_at":"2026-11-12T07:45:12Z"},"examples":{"Example":{"title":"Example","value":{"command_id":"cmd_611","battery_id":"bat_1","action":"autoconsume","parameters":{"min_wh":2600,"max_wh":13000},"start":"2026-11-12T08:00:00Z","end":"2026-11-12T17:00:00Z","status":"pending","status_reason":null,"batch_id":null,"created_at":"2026-11-12T07:45:12Z","updated_at":"2026-11-12T07:45:12Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"87e7e099-d2c6-41e1-b8aa-feb5e3e4a8a9":{"description":"The request is malformed or its parameters are invalid.","content":{"application/problem+json":{"schema":{"type":"object","description":"Error details, following RFC 9457 (Problem Details for HTTP APIs).","required":["type","title","status","code"],"properties":{"type":{"type":"string","format":"uri-reference","description":"URI identifying the problem type.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"title":{"type":"string","description":"Short, human-readable summary of the problem type.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"HTTP status code.","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Stable, machine-readable error code. See Errors in the API description.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation specific to this occurrence.","uniqueKey":"detail","typeLabel":"string"},"invalid_params":{"type":"array","description":"Parameters that caused the error, if any.","items":{"type":"object","required":["name","reason"],"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].name","typeLabel":"string"},"reason":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].reason","typeLabel":"string"}},"uniqueKey":"invalid_params.items.[INDEX]","typeLabel":"object"},"uniqueKey":"invalid_params","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"https://api.kapa.energy/problems/invalid-time-window","title":"Invalid time window","status":400,"code":"invalid_time_window","detail":"end must be after start.","invalid_params":[{"name":"end","reason":"must be after start"}]},"examples":{"Example":{"title":"Example","value":{"type":"https://api.kapa.energy/problems/invalid-time-window","title":"Invalid time window","status":400,"code":"invalid_time_window","detail":"end must be after start.","invalid_params":[{"name":"end","reason":"must be after start"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"aab5a7a8-688f-4cec-82c4-e3ee84a31aa6":{"description":"The access token is missing, invalid or expired.","content":{"application/problem+json":{"schema":{"type":"object","description":"Error details, following RFC 9457 (Problem Details for HTTP APIs).","required":["type","title","status","code"],"properties":{"type":{"type":"string","format":"uri-reference","description":"URI identifying the problem type.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"title":{"type":"string","description":"Short, human-readable summary of the problem type.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"HTTP status code.","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Stable, machine-readable error code. See Errors in the API description.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation specific to this occurrence.","uniqueKey":"detail","typeLabel":"string"},"invalid_params":{"type":"array","description":"Parameters that caused the error, if any.","items":{"type":"object","required":["name","reason"],"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].name","typeLabel":"string"},"reason":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].reason","typeLabel":"string"}},"uniqueKey":"invalid_params.items.[INDEX]","typeLabel":"object"},"uniqueKey":"invalid_params","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"https://api.kapa.energy/problems/unauthorized","title":"Unauthorized","status":401,"code":"unauthorized","detail":"The access token has expired."},"examples":{"Example":{"title":"Example","value":{"type":"https://api.kapa.energy/problems/unauthorized","title":"Unauthorized","status":401,"code":"unauthorized","detail":"The access token has expired."}}},"exampleType":"examples"}},"exampleType":"examples"},"95fd36d7-6e97-4590-81b7-92e46860fdbd":{"description":"No battery with this id is accessible to the client.","content":{"application/problem+json":{"schema":{"type":"object","description":"Error details, following RFC 9457 (Problem Details for HTTP APIs).","required":["type","title","status","code"],"properties":{"type":{"type":"string","format":"uri-reference","description":"URI identifying the problem type.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"title":{"type":"string","description":"Short, human-readable summary of the problem type.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"HTTP status code.","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Stable, machine-readable error code. See Errors in the API description.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation specific to this occurrence.","uniqueKey":"detail","typeLabel":"string"},"invalid_params":{"type":"array","description":"Parameters that caused the error, if any.","items":{"type":"object","required":["name","reason"],"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].name","typeLabel":"string"},"reason":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].reason","typeLabel":"string"}},"uniqueKey":"invalid_params.items.[INDEX]","typeLabel":"object"},"uniqueKey":"invalid_params","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"https://api.kapa.energy/problems/battery-not-found","title":"Battery not found","status":404,"code":"battery_not_found","detail":"No battery with id bat_9 is accessible to this client."},"examples":{"Example":{"title":"Example","value":{"type":"https://api.kapa.energy/problems/battery-not-found","title":"Battery not found","status":404,"code":"battery_not_found","detail":"No battery with id bat_9 is accessible to this client."}}},"exampleType":"examples"}},"exampleType":"examples"},"1a1072d1-e503-4bc5-ba95-ca3232071a23":{"description":"A request with the same Idempotency-Key is still being processed.","content":{"application/problem+json":{"schema":{"type":"object","description":"Error details, following RFC 9457 (Problem Details for HTTP APIs).","required":["type","title","status","code"],"properties":{"type":{"type":"string","format":"uri-reference","description":"URI identifying the problem type.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"title":{"type":"string","description":"Short, human-readable summary of the problem type.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"HTTP status code.","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Stable, machine-readable error code. See Errors in the API description.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation specific to this occurrence.","uniqueKey":"detail","typeLabel":"string"},"invalid_params":{"type":"array","description":"Parameters that caused the error, if any.","items":{"type":"object","required":["name","reason"],"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].name","typeLabel":"string"},"reason":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].reason","typeLabel":"string"}},"uniqueKey":"invalid_params.items.[INDEX]","typeLabel":"object"},"uniqueKey":"invalid_params","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"https://api.kapa.energy/problems/idempotency-key-in-use","title":"Idempotency key in use","status":409,"code":"idempotency_key_in_use","detail":"Retry once the original request has completed."},"examples":{"Example":{"title":"Example","value":{"type":"https://api.kapa.energy/problems/idempotency-key-in-use","title":"Idempotency key in use","status":409,"code":"idempotency_key_in_use","detail":"Retry once the original request has completed."}}},"exampleType":"examples"}},"exampleType":"examples"},"40ed2449-b165-41a0-89c0-eda792ba1632":{"description":"The request is valid but cannot be applied to this battery\n(`action_not_supported`, `energy_out_of_range`), or the Idempotency-Key was\nalready used with a different body (`idempotency_key_reused`).\n","content":{"application/problem+json":{"schema":{"type":"object","description":"Error details, following RFC 9457 (Problem Details for HTTP APIs).","required":["type","title","status","code"],"properties":{"type":{"type":"string","format":"uri-reference","description":"URI identifying the problem type.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi-reference>"},"title":{"type":"string","description":"Short, human-readable summary of the problem type.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"HTTP status code.","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Stable, machine-readable error code. See Errors in the API description.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation specific to this occurrence.","uniqueKey":"detail","typeLabel":"string"},"invalid_params":{"type":"array","description":"Parameters that caused the error, if any.","items":{"type":"object","required":["name","reason"],"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].name","typeLabel":"string"},"reason":{"type":"string","isRequired":true,"uniqueKey":"invalid_params.items.[INDEX].reason","typeLabel":"string"}},"uniqueKey":"invalid_params.items.[INDEX]","typeLabel":"object"},"uniqueKey":"invalid_params","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"type":"https://api.kapa.energy/problems/energy-out-of-range","title":"Energy out of range","status":422,"code":"energy_out_of_range","detail":"max_wh (15000) exceeds the usable capacity of this battery (13000 Wh).","invalid_params":[{"name":"max_wh","reason":"exceeds usable_capacity_wh"}]},"examples":{"Example":{"title":"Example","value":{"type":"https://api.kapa.energy/problems/energy-out-of-range","title":"Energy out of range","status":422,"code":"energy_out_of_range","detail":"max_wh (15000) exceeds the usable capacity of this battery (13000 Wh).","invalid_params":[{"name":"max_wh","reason":"exceeds usable_capacity_wh"}]}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"c2e4e0f7-3540-4425-897d-7de72a89b5df":{"oauth2":{"type":"oauth2","description":"OAuth 2.0 client credentials. Obtain a token from `POST /token`.","flows":{"clientCredentials":{"tokenUrl":"https://api.kapa.energy/token","scopes":{}}},"scopes":[],"schemeName":"oauth2"}}},"servers":{"2b930e37-df3c-4ce7-8c09-1e5db810139c":{"url":"https://api.kapa.energy","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"oauth2","description":"OAuth 2.0 client credentials. Obtain a token from `POST /token`.","flows":{"clientCredentials":{"tokenUrl":"https://api.kapa.energy/token","scopes":{}}},"scopes":[],"schemeName":"oauth2"},"schema":{"title":"OAuth2 Auth","type":"string","isRequired":true,"description":"OAuth 2.0 client credentials. Obtain a token from `POST /token`.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"oauth2","name":"Authorization"}],"title":"oauth2"}]},"originalFileLocation":"openapi.yaml"},"subdomain":"kapa-energy","siteName":"Kapa Energy Battery API","title":"Switch to self-consumption - Kapa Energy Battery API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T17:40:42.670Z","originalFileLocation":"api-reference/commands/switch-to-self-consumption.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Self-consumption: the battery stores on-site production surplus and discharges to cover site consumption, to minimise grid import and export. Stored energy is kept between min_wh and max_wh.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Kapa Energy Battery API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Switch to self-consumption - Kapa Energy Battery API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Self-consumption: the battery stores on-site production surplus and discharges to cover site consumption, to minimise grid import and export. Stored energy is kept between min_wh and max_wh.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Kapa Energy Battery API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://kapa-energy.mintlify.site/_mintlify/api/og/v2?division=Commands\u0026amp;title=Switch+to+self-consumption\u0026amp;description=Self-consumption%3A+the+battery+stores+on-site+production+surplus+and+discharges%0Ato+cover+site+consumption%2C+to+minimise+grid+import+and+export.+Stored+energy+is%0Ak\u0026amp;theme=be394bdd824f66fd2549706a\u0026amp;signature=ec8aed2e0e444bbd08e64efe3ca27e8bacbfc0bbc7fedd208ca371cb698dee91\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Switch to self-consumption - Kapa Energy Battery API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Self-consumption: the battery stores on-site production surplus and discharges to cover site consumption, to minimise grid import and export. Stored energy is kept between min_wh and max_wh.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://kapa-energy.mintlify.site/_mintlify/api/og/v2?division=Commands\u0026amp;title=Switch+to+self-consumption\u0026amp;description=Self-consumption%3A+the+battery+stores+on-site+production+surplus+and+discharges%0Ato+cover+site+consumption%2C+to+minimise+grid+import+and+export.+Stored+energy+is%0Ak\u0026amp;theme=be394bdd824f66fd2549706a\u0026amp;signature=ec8aed2e0e444bbd08e64efe3ca27e8bacbfc0bbc7fedd208ca371cb698dee91\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/kapa-energy/pztUxocyRE_md0x_/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Kapa Energy Battery API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#16A34A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/commands/switch-to-self-consumption.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://kapa-energy.mintlify.app/#organization\",\"name\":\"Kapa Energy Battery API\",\"url\":\"https://kapa-energy.mintlify.app\"},{\"@type\":\"WebSite\",\"@id\":\"https://kapa-energy.mintlify.app#website\",\"name\":\"Kapa Energy Battery API\",\"url\":\"https://kapa-energy.mintlify.app\",\"publisher\":{\"@id\":\"https://kapa-energy.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption#webpage\",\"url\":\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption\",\"name\":\"Switch to self-consumption\",\"description\":\"Self-consumption: the battery stores on-site production surplus and discharges to cover site consumption, to minimise grid import and export. Stored energy is kept between min_wh and max_wh.\",\"dateModified\":\"2026-11-12T17:40:42.670Z\",\"isPartOf\":{\"@id\":\"https://kapa-energy.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Commands\",\"item\":\"https://kapa-energy.mintlify.app/api-reference/commands/charge-the-battery\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Switch to self-consumption\",\"item\":\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption#apireference\",\"headline\":\"Switch to self-consumption\",\"name\":\"Switch to self-consumption\",\"description\":\"Self-consumption: the battery stores on-site production surplus and discharges to cover site consumption, to minimise grid import and export. Stored energy is kept between min_wh and max_wh.\",\"url\":\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption\",\"mainEntityOfPage\":{\"@id\":\"https://kapa-energy.mintlify.app/api-reference/commands/switch-to-self-consumption#webpage\"},\"dateModified\":\"2026-11-12T17:40:42.670Z\",\"publisher\":{\"@id\":\"https://kapa-energy.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://kapa-energy.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Kapa Energy Battery API\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Kapa Energy Battery API\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/commands/switch-to-self-consumption.md","siteName":"Kapa Energy Battery API","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API reference","groups":[{"group":"Authentication","pages":[{"title":"Get an access token","deprecated":null,"version":null,"openapi":"/openapi.yaml post /token","href":"/api-reference/authentication/get-an-access-token"}]},{"group":"Batteries","pages":[{"title":"Get battery information","deprecated":null,"version":null,"openapi":"/openapi.yaml get /bat/v1/{id}/info","href":"/api-reference/batteries/get-battery-information"}]},{"group":"Commands","pages":[{"title":"Charge the battery","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bat/v1/{id}/charge","href":"/api-reference/commands/charge-the-battery"},{"title":"Discharge the battery","description":"Discharges the battery at the highest power the device allows. Energy not\nconsumed on site is exported to the grid, within any export limit applied by the\nmanufacturer or the installation. Discharging stops when stored energy reaches\n`min_wh`, or at `end`.\n","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bat/v1/{id}/discharge","href":"/api-reference/commands/discharge-the-battery"},{"title":"Switch to self-consumption","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bat/v1/{id}/autoconsume","href":"/api-reference/commands/switch-to-self-consumption"},{"title":"Put the battery on idle","description":"The battery neither charges nor discharges during the window. Manufacturer\nsafety functions (e.g. protection against deep discharge) may still act.\n","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bat/v1/{id}/idle","href":"/api-reference/commands/put-the-battery-on-idle"},{"title":"List commands","deprecated":null,"version":null,"openapi":"/openapi.yaml get /bat/v1/{id}/commands","href":"/api-reference/commands/list-commands"},{"title":"Cancel commands","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bat/v1/{id}/cancel_command","href":"/api-reference/commands/cancel-commands"},{"title":"Command status changed","version":null,"deprecated":null,"openapi":"/openapi.yaml webhook command.status_changed","href":"/api-reference/commands/command-status-changed"}]},{"group":"Telemetry","pages":[{"title":"Get telemetry history","deprecated":null,"version":null,"openapi":"/openapi.yaml get /bat/v1/{id}/telemetry","href":"/api-reference/telemetry/get-telemetry-history"},{"title":"Get latest telemetry","deprecated":null,"version":null,"openapi":"/openapi.yaml get /bat/v1/{id}/telemetry/latest","href":"/api-reference/telemetry/get-latest-telemetry"},{"title":"New telemetry points","version":null,"deprecated":null,"openapi":"/openapi.yaml webhook telemetry","href":"/api-reference/telemetry/new-telemetry-points"}]},{"group":"Batches","pages":[{"title":"Send a batch of commands","deprecated":null,"version":null,"openapi":"/openapi.yaml post /bat/v1/batches","href":"/api-reference/batches/send-a-batch-of-commands"}]}]},{"tab":"Webhooks","pages":[{"title":"Webhooks","href":"/webhooks/telemetry"}]}]},"basePath":"","title":"Switch to self-consumption - Kapa Energy Battery API","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CybtLBIt.js","utils-BMLj2fvV.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-B6In562Y.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dr8Mfhp9.js","snippetPresets-2rmQvMVl.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-WMqJYdZj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CJ-MlPHu.js","shallow-dY3TMRCk.js","getApiPlaygroundDisplay-v-1B2bKm.js","CodeSnippet-BDhiTB7U.js","CodeSnippets-D9hnzQcS.js","Page-C4GwDT3_.js","getPastedJson-Th2V45jI.js","icon-BQXch1W9.js","MethodPill-BCqUneP3.js","DuplicateIcon-Q_-bhurZ.js","createIcon-DUjLHRqp.js","DynamicMarkdown-B-f2cqXQ.js","SectionHeading-Da5NsV4v.js","axios-vUo_bRtp.js","Markdown-D13FWkIM.js","clsx-D3Isdib3.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-C-XZBk9h.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink--qIqmmVG.js"]}