curl --request GET \
--url https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state \
--header 'Authorization: <api-key>'import requests
url = "https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state', 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.engrate.io/schedule-management/v1/schedules/{uid}/series-state",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$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.engrate.io/schedule-management/v1/schedules/{uid}/series-state"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"schedule_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"series": [
{
"confirmation": {
"positions": [
{
"fault_tolerant_acceptance": true,
"finality": "intermediate",
"kind": "confirmed",
"match_report": {
"incoming_message_id": "<string>",
"match_report_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"stated_at": "2023-11-07T05:31:56Z"
},
"matching_rule": "lower_value",
"position": 123,
"set_manually": true,
"value": 123
}
],
"rejection": {
"finality": "intermediate",
"match_report": {
"incoming_message_id": "<string>",
"match_report_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"stated_at": "2023-11-07T05:31:56Z"
},
"reasons": [
{
"code": "<string>",
"text": "<string>"
}
]
}
},
"findings": {
"positions": [
{
"counterparty": 123,
"ours": 123,
"position": 123
}
],
"reasons": [
{
"code": "<string>",
"text": "<string>"
}
]
},
"match_report": {
"incoming_message_id": "<string>",
"match_report_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"stated_at": "2023-11-07T05:31:56Z"
},
"match_status": "not_checked",
"series": {
"direction": "production",
"scheduling_area": "<string>",
"type": "production_consumption"
}
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"ctx": {},
"input": "<unknown>"
}
]
}Get Series State
Get the series state of each series in a schedule.
The series state gives the match status of the series. It also shows the values that the Scheduling Area Responsible will use.
match_status is not_checked until the Scheduling Area Responsible gives a match verdict on the series. If the match status is not matched, findings gives the causes from the Scheduling Area Responsible. For each position, findings also gives your value and the value of the counterparty, if the Scheduling Area Responsible sends these values.
For each position, confirmation gives the value that the Scheduling Area Responsible will use and the finality of that value. An intermediate value can change. Settlement uses the final value.
The response shows the series of the active schedule version first, in the sequence of that version. The active version is the last version that the Scheduling Area Responsible accepted. If no version is active, the response shows the series of the last version first. Then it shows the other series that have a match status or a confirmation from a match report. For example, it shows a series of a different version, or a series that only the counterparty sent (counterpart_only).
-
404 if no schedule of your organization has this uid.
-
422 if the uid is not a UUID.
curl --request GET \
--url https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state \
--header 'Authorization: <api-key>'import requests
url = "https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state', 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.engrate.io/schedule-management/v1/schedules/{uid}/series-state",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$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.engrate.io/schedule-management/v1/schedules/{uid}/series-state"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.engrate.io/schedule-management/v1/schedules/{uid}/series-state")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"schedule_uid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"series": [
{
"confirmation": {
"positions": [
{
"fault_tolerant_acceptance": true,
"finality": "intermediate",
"kind": "confirmed",
"match_report": {
"incoming_message_id": "<string>",
"match_report_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"stated_at": "2023-11-07T05:31:56Z"
},
"matching_rule": "lower_value",
"position": 123,
"set_manually": true,
"value": 123
}
],
"rejection": {
"finality": "intermediate",
"match_report": {
"incoming_message_id": "<string>",
"match_report_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"stated_at": "2023-11-07T05:31:56Z"
},
"reasons": [
{
"code": "<string>",
"text": "<string>"
}
]
}
},
"findings": {
"positions": [
{
"counterparty": 123,
"ours": 123,
"position": 123
}
],
"reasons": [
{
"code": "<string>",
"text": "<string>"
}
]
},
"match_report": {
"incoming_message_id": "<string>",
"match_report_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"stated_at": "2023-11-07T05:31:56Z"
},
"match_status": "not_checked",
"series": {
"direction": "production",
"scheduling_area": "<string>",
"type": "production_consumption"
}
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"ctx": {},
"input": "<unknown>"
}
]
}Was this page helpful?