Create Inverter (JSON)
curl --request POST \
--url https://api.example.com/inverters/jsonimport requests
url = "https://api.example.com/inverters/json"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://api.example.com/inverters/json', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/inverters/json",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/inverters/json"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/inverters/json")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/inverters/json")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_bodyInverters
Create Inverter (JSON)
Create an inverter from a JSON request body
POST
/
inverters
/
json
Create Inverter (JSON)
curl --request POST \
--url https://api.example.com/inverters/jsonimport requests
url = "https://api.example.com/inverters/json"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://api.example.com/inverters/json', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/inverters/json",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/inverters/json"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/inverters/json")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/inverters/json")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_bodyPOST /inverters/json
Create a new inverter by providing structured JSON instead of uploading an.ond file. This is useful when inverter specifications are already available in your application or when programmatically building an inverter library.
Notes
- Requires a valid JWT with write access to the workspace.
- The request body must include
name(non-empty string) andproperties(dict of inverter specifications). Theefficiencyfield is optional. - The
propertiesdict should contain the same key-value structure produced by.ondfile parsing (Pnom, Vmax, efficiency parameters, etc.). - Extra fields beyond
name,properties, andefficiencyare rejected (400). - For uploading an
.ondequipment file directly, usePOST /invertersinstead.
