M8-R08: add atomic meter close and binding transfer
This commit is contained in:
@@ -1777,6 +1777,74 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/energy/meters/{meter_id}/close": {
|
||||
"post": {
|
||||
"tags": [
|
||||
"api-energy-meters"
|
||||
],
|
||||
"summary": "Close Energy Meter",
|
||||
"operationId": "close_energy_meter_api_energy_meters__meter_id__close_post",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "meter_id",
|
||||
"in": "path",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"type": "integer",
|
||||
"title": "Meter Id"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "X-CSRF-Token",
|
||||
"in": "header",
|
||||
"required": false,
|
||||
"schema": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "X-Csrf-Token"
|
||||
}
|
||||
}
|
||||
],
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/MeterCloseRequest"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful Response",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/MeterResponse"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"422": {
|
||||
"description": "Validation Error",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/HTTPValidationError"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/energy/meters/{meter_id}": {
|
||||
"patch": {
|
||||
"tags": [
|
||||
@@ -2497,6 +2565,74 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/energy/meters/{meter_id}/bindings/transfer": {
|
||||
"post": {
|
||||
"tags": [
|
||||
"api-energy-meter-sources"
|
||||
],
|
||||
"summary": "Post Binding Transfer",
|
||||
"operationId": "post_binding_transfer_api_energy_meters__meter_id__bindings_transfer_post",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "meter_id",
|
||||
"in": "path",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"type": "integer",
|
||||
"title": "Meter Id"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "X-CSRF-Token",
|
||||
"in": "header",
|
||||
"required": false,
|
||||
"schema": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "null"
|
||||
}
|
||||
],
|
||||
"title": "X-Csrf-Token"
|
||||
}
|
||||
}
|
||||
],
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/BindingTransferRequest"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful Response",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/BindingTransferResponse"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"422": {
|
||||
"description": "Validation Error",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/HTTPValidationError"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/expose": {
|
||||
"get": {
|
||||
"tags": [
|
||||
@@ -3762,6 +3898,50 @@
|
||||
],
|
||||
"title": "BindingResponse"
|
||||
},
|
||||
"BindingTransferRequest": {
|
||||
"properties": {
|
||||
"from_binding_uuid": {
|
||||
"type": "string",
|
||||
"maxLength": 36,
|
||||
"minLength": 1,
|
||||
"title": "From Binding Uuid"
|
||||
},
|
||||
"to_source_channel_uuid": {
|
||||
"type": "string",
|
||||
"maxLength": 36,
|
||||
"minLength": 1,
|
||||
"title": "To Source Channel Uuid"
|
||||
},
|
||||
"effective_at": {
|
||||
"type": "string",
|
||||
"format": "date-time",
|
||||
"title": "Effective At"
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": [
|
||||
"from_binding_uuid",
|
||||
"to_source_channel_uuid",
|
||||
"effective_at"
|
||||
],
|
||||
"title": "BindingTransferRequest"
|
||||
},
|
||||
"BindingTransferResponse": {
|
||||
"properties": {
|
||||
"closed_binding": {
|
||||
"$ref": "#/components/schemas/BindingResponse"
|
||||
},
|
||||
"created_binding": {
|
||||
"$ref": "#/components/schemas/BindingResponse"
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": [
|
||||
"closed_binding",
|
||||
"created_binding"
|
||||
],
|
||||
"title": "BindingTransferResponse"
|
||||
},
|
||||
"CatalogEntrySchema": {
|
||||
"properties": {
|
||||
"entity": {
|
||||
@@ -4907,6 +5087,21 @@
|
||||
"title": "MeterBindingSummary",
|
||||
"description": "Stable, non-sensitive binding identity embedded in meter responses."
|
||||
},
|
||||
"MeterCloseRequest": {
|
||||
"properties": {
|
||||
"ended_at": {
|
||||
"type": "string",
|
||||
"format": "date-time",
|
||||
"title": "Ended At"
|
||||
}
|
||||
},
|
||||
"type": "object",
|
||||
"required": [
|
||||
"ended_at"
|
||||
],
|
||||
"title": "MeterCloseRequest",
|
||||
"description": "Close the active meter epoch at an exclusive end boundary."
|
||||
},
|
||||
"MeterCostPeriodSchema": {
|
||||
"properties": {
|
||||
"commodity": {
|
||||
|
||||
Reference in New Issue
Block a user