Edge Device Local API Docs
Local Control of Load Management [Rest API]
to activate the api server, please contact support\@clemap ch the api returns an http status code 500 (internal server error) if certain fields are incorrect or invalid good to know ensure that all required fields are correctly formatted and validated to avoid this error if you only want to read measuring data locally, you're in the wrong place—you need the realtime energy data \[modbus tcp] docid\ bhjz3x 44as5wambggzgq { "name" "live data", "method" "get", "url" "https //\[edge device ip] 7000/v1/live/data", "description" "provides live updated values of the consumption and status of the load clm ", "tab" "examples", "examples" { "languages" \[ { "id" "yy2m7kuylxvgrxk1gd1ib", "language" "curl", "code" "curl location globoff 'https //\[edge device ip] 7000/v1/live/data' \\\\\n header 'accept application/json' \\\\\n header 'content type application/json'", "customlabel" "" }, { "id" "aaxvwciiz6qhmqt9wag4n", "language" "nodejs", "code" "var request = require('request');\nvar options = {\n 'method' 'get',\n 'url' 'https //\[edge device ip] 7000/v1/live/data',\n 'headers' {\n 'accept' 'application/json',\n 'content type' 'application/json'\n }\n};\nrequest(options, function (error, response) {\n if (error) throw new error(error);\n console log(response body);\n});\n", "customlabel" "" }, { "id" "9ptntyot6tqzklkeduelb", "language" "javascript", "code" "var myheaders = new headers();\nmyheaders append(\\"accept\\", \\"application/json\\");\nmyheaders append(\\"content type\\", \\"application/json\\");\n\nvar requestoptions = {\n method 'get',\n headers myheaders,\n redirect 'follow'\n};\n\nfetch(\\"https //\[edge device ip] 7000/v1/live/data\\", requestoptions)\n then(response => response text())\n then(result => console log(result))\n catch(error => console log('error', error));", "customlabel" "" }, { "id" " uemx hl7mt wyr9 yjty", "language" "python", "code" "import requests\nimport json\n\nurl = \\"https //\[edge device ip] 7000/v1/live/data\\"\n\npayload = {}\nheaders = {\n 'accept' 'application/json',\n 'content type' 'application/json'\n}\n\nresponse = requests request(\\"get\\", url, headers=headers, data=payload)\n\nprint(response text)\n", "customlabel" "" }, { "id" " bmzl47gsvvt9 h6puhkg", "language" "ruby", "code" "require \\"uri\\"\nrequire \\"json\\"\nrequire \\"net/http\"\n\nurl = uri(\\"https //\[edge device ip] 7000/v1/live/data\\")\n\nhttps = net http new(url host, url port)\nhttps use ssl = true\n\nrequest = net http get new(url)\nrequest\[\\"accept\\"] = \\"application/json\\"\nrequest\[\\"content type\\"] = \\"application/json\\"\n\nresponse = https request(request)\nputs response read body\n", "customlabel" "" } ], "selectedlanguageid" "yy2m7kuylxvgrxk1gd1ib" }, "results" { "languages" \[ { "id" "rowp0wadauqajbqua3qeg", "language" "200", "customlabel" "", "code" "{\n \\"actualactivepower\\" \\"float\\", // active power measured by the edge device in w\n \\"actualreactivepower\\" \\"float\\", // reactive power measured by the edge device in var\n \\"actualcurrentl1\\" \\"float\\", // current measured by the edge device on phase l1 in a\n \\"actualcurrentl2\\" \\"float\\", // current measured by the edge device on phase l2 in a\n \\"actualcurrentl3\\" \\"float\\", // current measured by the edge device on phase l3 in a\n \\"actualcurrentsum\\" \\"float\\", // current measured by the edge device, sum over all phases in a\n \\"status\\" \\"string\\", // aggregated status of all the evse controlled by the clm\n}" } ], "selectedlanguageid" "rowp0wadauqajbqua3qeg" }, "request" { "pathparameters" \[], "queryparameters" \[], "headerparameters" \[ { "name" "authorization", "kind" "required", "type" "string", "description" "user and password encoded in base64 following basic auth specification", "children" \[] } ], "bodydataparameters" \[], "formdataparameters" \[] }, "currentnewparameter" { "label" "header parameter", "value" "headerparameters" } } { "name" "get settings", "method" "get", "url" "https //\[edge device ip] 7000/v1/flex management/setting", "description" "return current api settings", "tab" "examples", "examples" { "languages" \[ { "id" "0mkf6kbnk574pjvt3c6nv", "language" "curl", "code" "curl location globoff 'https //\[edge device ip] 7000/v1/flex management settings' \\\\\n header 'accept application/json' \\\\\n header 'content type application/json'", "customlabel" "" }, { "id" "gm8gqden0fccsa7uu0 qw", "language" "nodejs", "code" "var request = require('request');\nvar options = {\n 'method' 'get',\n 'url' 'https //\[edge device ip] 7000/v1/flex management settings',\n 'headers' {\n 'accept' 'application/json',\n 'content type' 'application/json'\n }\n};\nrequest(options, function (error, response) {\n if (error) throw new error(error);\n console log(response body);\n});\n", "customlabel" "" }, { "id" "v0xo9oxozhfm5dcqidy0f", "language" "javascript", "code" "var myheaders = new headers();\nmyheaders append(\\"accept\\", \\"application/json\\");\nmyheaders append(\\"content type\\", \\"application/json\\");\n\nvar requestoptions = {\n method 'get',\n headers myheaders,\n redirect 'follow'\n};\n\nfetch(\\"https //\[edge device ip] 7000/v1/flex management settings\\", requestoptions)\n then(response => response text())\n then(result => console log(result))\n catch(error => console log('error', error));", "customlabel" "" }, { "id" "brdueksvhdggfl8pptdre", "language" "python", "code" "import requests\nimport json\n\nurl = \\"https //\[edge device ip] 7000/v1/flex management settings\\"\n\npayload = {}\nheaders = {\n 'accept' 'application/json',\n 'content type' 'application/json'\n}\n\nresponse = requests request(\\"get\\", url, headers=headers, data=payload)\n\nprint(response text)\n", "customlabel" "" }, { "id" "3z1d1nld a9gaox7ydobq", "language" "ruby", "code" "require \\"uri\\"\nrequire \\"json\\"\nrequire \\"net/http\"\n\nurl = uri(\\"https //\[edge device ip] 7000/v1/flex management settings\\")\n\nhttps = net http new(url host, url port)\nhttps use ssl = true\n\nrequest = net http get new(url)\nrequest\[\\"accept\\"] = \\"application/json\\"\nrequest\[\\"content type\\"] = \\"application/json\\"\n\nresponse = https request(request)\nputs response read body\n", "customlabel" "" } ], "selectedlanguageid" "0mkf6kbnk574pjvt3c6nv" }, "results" { "languages" \[ { "id" "b6wgdm1bpbh1elupxmffb", "language" "200", "customlabel" "", "code" "{\n \\"activepoweractivation\\" \\"bool\\", // true if cascading is enabled otherwise false\n \\"fallbackcurrentlimit\\" \\"float\\", // current limit if keep alive endpoint is not called every 120 sec (default)\n \\"currentlimit\\" \\"float\\", // lm current limit that is configured currently\n \\"runstate\\" true, // \[tbd by smartgridready] currently alwasy true\n \\"readinessstate\\" true, // \[tbd by smartgridready] currently alwasy true\n \\"maxactivepower\\" 0 0, // \[tbd by smartgridready] currently alwasy 0 0\n \\"minactivepower\\" 0 0, // \[tbd by smartgridready] currently alwasy 0 0\n}" } ], "selectedlanguageid" "b6wgdm1bpbh1elupxmffb" }, "request" { "pathparameters" \[], "queryparameters" \[], "headerparameters" \[ { "name" "authorization", "kind" "required", "type" "string", "description" "user and password encoded in base64 following basic auth specification", "children" \[] } ], "bodydataparameters" \[], "formdataparameters" \[] }, "currentnewparameter" { "label" "body parameter", "value" "bodydataparameters" } } { "name" "update settings", "method" "post", "url" "https //\[edge device ip] 7000/v1/flex management/setting", "description" "update api settings", "tab" "examples", "examples" { "languages" \[ { "id" "s6zpgs8xxwrphsedyl eh", "language" "curl", "code" "curl location globoff 'https //\[edge device ip] 7000/v1/flex management/setting' \\\\\n header 'authorization string' \\\\\n data '{\n \\"activepoweractivation\\" \\"boolean\\",\n \\"currentlimit\\" \\"number\\",\n \\"fallbackcurrentlimit\\" \\"number\\"\n}'", "customlabel" "" }, { "id" "vdmwdwtmfhmg5tfsibxtc", "language" "nodejs", "code" "var request = require('request');\nvar options = {\n 'method' 'post',\n 'url' 'https //\[edge device ip] 7000/v1/flex management/setting',\n 'headers' {\n 'authorization' 'string'\n },\n body '{\\"activepoweractivation\\" \\"boolean\\",\\"currentlimit\\" \\"number\\",\\"fallbackcurrentlimit\\" \\"number\\"}'\n\n};\nrequest(options, function (error, response) {\n if (error) throw new error(error);\n console log(response body);\n});\n", "customlabel" "" }, { "id" "ybwwiz3gvrxfn5zoktrvc", "language" "javascript", "code" "var myheaders = new headers();\nmyheaders append(\\"authorization\\", \\"string\\");\n\nvar raw = \\"{\\\\\\"activepoweractivation\\\\\\" \\\\\\"boolean\\\\\\",\\\\\\"currentlimit\\\\\\" \\\\\\"number\\\\\\",\\\\\\"fallbackcurrentlimit\\\\\\" \\\\\\"number\\\\\\"}\\";\n\nvar requestoptions = {\n method 'post',\n headers myheaders,\n body raw,\n redirect 'follow'\n};\n\nfetch(\\"https //\[edge device ip] 7000/v1/flex management/setting\\", requestoptions)\n then(response => response text())\n then(result => console log(result))\n catch(error => console log('error', error));", "customlabel" "" }, { "id" "7dhfrqys7r2vop0 1knvn", "language" "python", "code" "import requests\n\nurl = \\"https //\[edge device ip] 7000/v1/flex management/setting\\"\n\npayload = \\"{\\\\\\"activepoweractivation\\\\\\" \\\\\\"boolean\\\\\\",\\\\\\"currentlimit\\\\\\" \\\\\\"number\\\\\\",\\\\\\"fallbackcurrentlimit\\\\\\" \\\\\\"number\\\\\\"}\\"\nheaders = {\n 'authorization' 'string'\n}\n\nresponse = requests request(\\"post\\", url, headers=headers, data=payload)\n\nprint(response text)\n", "customlabel" "" }, { "id" "jd5w8ido2xf d icperhv", "language" "ruby", "code" "require \\"uri\\"\nrequire \\"net/http\"\n\nurl = uri(\\"https //\[edge device ip] 7000/v1/flex management/setting\\")\n\nhttps = net http new(url host, url port)\nhttps use ssl = true\n\nrequest = net http post new(url)\nrequest\[\\"authorization\\"] = \\"string\\"\nrequest body = \\"{\\\\\\"activepoweractivation\\\\\\" \\\\\\"boolean\\\\\\",\\\\\\"currentlimit\\\\\\" \\\\\\"number\\\\\\",\\\\\\"fallbackcurrentlimit\\\\\\" \\\\\\"number\\\\\\"}\\"\n\nresponse = https request(request)\nputs response read body\n", "customlabel" "" } ], "selectedlanguageid" "vdmwdwtmfhmg5tfsibxtc" }, "results" { "languages" \[ { "id" "btxohhhwu9yllah9o3glj", "language" "200", "customlabel" "", "code" "" } ], "selectedlanguageid" "btxohhhwu9yllah9o3glj" }, "request" { "pathparameters" \[], "queryparameters" \[], "headerparameters" \[ { "name" "authorization", "kind" "required", "type" "string", "description" "user and password encoded in base64 following basic auth specification", "children" \[] } ], "bodydataparameters" \[ { "name" "activepoweractivation", "kind" "optional", "type" "boolean", "description" "enable or disable lm controll over api", "children" \[] }, { "name" "currentlimit", "kind" "optional", "type" "number", "description" "load management current limit", "children" \[] }, { "name" "fallbackcurrentlimit", "kind" "optional", "type" "number", "description" "limit if keep alive endpoint is not called every 120 sec (default)", "children" \[] } ], "formdataparameters" \[] }, "currentnewparameter" { "label" "body parameter", "value" "bodydataparameters" } } { "name" "keep alive", "method" "post", "url" "https //\[edge device ip] 7000/v1/keep alive", "description" "this endpoint resets the internal timeout and prevents the clm to enter into the fallback current limit mode this endpoint should be called at least once every 120 seconds (default) ", "tab" "examples", "examples" { "languages" \[ { "id" "zxegtbi5szxdtfvkl8t3s", "language" "curl", "code" "curl location globoff request post 'https //\[edge device ip] 7000/v1/keep alive' \\\\\n header 'accept application/json' \\\\\n header 'content type application/json'", "customlabel" "" }, { "id" "4xsbuaxpxgvkpdazwx76c", "language" "nodejs", "code" "var request = require('request');\nvar options = {\n 'method' 'post',\n 'url' 'https //\[edge device ip] 7000/v1/keep alive',\n 'headers' {\n 'accept' 'application/json',\n 'content type' 'application/json'\n }\n};\nrequest(options, function (error, response) {\n if (error) throw new error(error);\n console log(response body);\n});\n", "customlabel" "" }, { "id" "asxhit2bfgwqq6dsf1moz", "language" "javascript", "code" "var myheaders = new headers();\nmyheaders append(\\"accept\\", \\"application/json\\");\nmyheaders append(\\"content type\\", \\"application/json\\");\n\nvar requestoptions = {\n method 'post',\n headers myheaders,\n redirect 'follow'\n};\n\nfetch(\\"https //\[edge device ip] 7000/v1/keep alive\\", requestoptions)\n then(response => response text())\n then(result => console log(result))\n catch(error => console log('error', error));", "customlabel" "" }, { "id" "iq8sbtwbmzvb3e7pqf3wg", "language" "python", "code" "import requests\nimport json\n\nurl = \\"https //\[edge device ip] 7000/v1/keep alive\\"\n\npayload = {}\nheaders = {\n 'accept' 'application/json',\n 'content type' 'application/json'\n}\n\nresponse = requests request(\\"post\\", url, headers=headers, data=payload)\n\nprint(response text)\n", "customlabel" "" }, { "id" "womngjvh6foienrpchzyu", "language" "ruby", "code" "require \\"uri\\"\nrequire \\"json\\"\nrequire \\"net/http\"\n\nurl = uri(\\"https //\[edge device ip] 7000/v1/keep alive\\")\n\nhttps = net http new(url host, url port)\nhttps use ssl = true\n\nrequest = net http post new(url)\nrequest\[\\"accept\\"] = \\"application/json\\"\nrequest\[\\"content type\\"] = \\"application/json\\"\n\nresponse = https request(request)\nputs response read body\n", "customlabel" "" } ], "selectedlanguageid" "zxegtbi5szxdtfvkl8t3s" }, "results" { "languages" \[ { "id" "xnvp9zabqidce6yzeszdo", "language" "200", "customlabel" "", "code" "" } ], "selectedlanguageid" "xnvp9zabqidce6yzeszdo" }, "request" { "pathparameters" \[], "queryparameters" \[], "headerparameters" \[ { "name" "authorization", "kind" "required", "type" "string", "description" "user and password encoded in base64 following basic auth specification", "children" \[] } ], "bodydataparameters" \[], "formdataparameters" \[] }, "currentnewparameter" { "label" "header parameter", "value" "headerparameters" } }