Protocol Documentation
Table of Contents
Top
frequenz/api/common/v1/grid/delivery_duration.proto
DeliveryPeriod
DeliveryPeriod represents the time period during which the contract
is delivered. It is defined by a start timestamp and a duration.
Field |
Type |
Label |
Description |
start |
google.protobuf.Timestamp |
|
Start UTC timestamp represents the beginning of the delivery period. This timestamp is inclusive, meaning that the delivery period starts from this point in time. |
!!! note Delivery period start time constraints: - 5-minute durations must start at times that are multiples of 5 minutes past the hour. - 15-minute durations must start at :00, :15, :30, or :45 past the hour. - 30-minute durations must start at :00 or :30 past the hour. - 60-minute durations must start at :00 past the hour. |
| duration | DeliveryDuration | | The length of the delivery period. |
DeliveryDuration
DeliveryDuration represents the time increment, in minutes,
used for electricity deliveries and trading. These durations
serve as the basis for defining the delivery period in contracts,
and they dictate how energy is scheduled and delivered to meet
contractual obligations.
!!! note "Compatibility Constraints"
Not all delivery durations are universally
compatible with all delivery areas or markets.
Name |
Number |
Description |
DELIVERY_DURATION_UNSPECIFIED |
0 |
Default value, indicates that the duration is unspecified. |
DELIVERY_DURATION_5 |
1 |
5-minute duration |
DELIVERY_DURATION_15 |
2 |
15-minute contract duration. |
DELIVERY_DURATION_30 |
3 |
30-minute contract duration. |
DELIVERY_DURATION_60 |
4 |
1-hour contract duration. |
Scalar Value Types
.proto Type |
Notes |
C++ |
Java |
Python |
Go |
C# |
PHP |
Ruby |
double |
|
double |
double |
float |
float64 |
double |
float |
Float |
float |
|
float |
float |
float |
float32 |
float |
float |
Float |
int32 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
int64 |
Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
uint32 |
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
uint64 |
Uses variable-length encoding. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum or Fixnum (as required) |
sint32 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
sint64 |
Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
fixed32 |
Always four bytes. More efficient than uint32 if values are often greater than 2^28. |
uint32 |
int |
int |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
fixed64 |
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum |
sfixed32 |
Always four bytes. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
sfixed64 |
Always eight bytes. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
bool |
|
bool |
boolean |
boolean |
bool |
bool |
boolean |
TrueClass/FalseClass |
string |
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
string |
string |
string |
String (UTF-8) |
bytes |
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |
[]byte |
ByteString |
string |
String (ASCII-8BIT) |