Contracting API v3 (Alpha)¶
MonopolxContractsAdapter¶
MonopolX PSFS Contracting API Adapter.
GetContract¶
Get a specific contract.
ListContracts¶
List contracts with optional filters.
Due to performance limitation, this method is restricted to return a maximum of 50 contracts per call.
CreateContract¶
Create a contract.
CommodityB2CContractSubjectDetails¶
Field | Type | Rules | Description |
---|---|---|---|
*delivery¶ | EnergyDelivery | Which kind and amount of energy is to be delivered to where. | |
*meter_number¶ | string | The current meter number. | |
is_relocatable¶ | bool | output only | The contract can be relocated. |
previous_contract¶ | string | output only | The id of the previous contract, if contract was relocated. |
next_invoice¶ | google.type.Date | output only | The expected next invoice. |
latest_cancellation_date¶ | google.type.Date | output only | The latest date when a cancellation can take place. |
tariff¶ | ContractTariff | output only | The tariff this contract is for. |
future_tariff¶ | ContractTariff | output only | The future tariff of this contract. |
delivery_date¶ | google.type.Date | The delivery start date. | |
*cancel_for_customer¶ | bool | Cancel contract for customer. (-- api-linter: core::0140::prepositions=disabled | |
*previous_provider¶ | string | Previous Provider. |
ContractTariff¶
Field | Type | Rules | Description |
---|---|---|---|
active_range¶ | enpowerx.types.v3.DateRange | The date range when the tariff is active. | |
product¶ | string | The product ID. | |
display_name¶ | string | A human-readable name for the product. | |
fixed_cost¶ | RecurringCost | The fixed recurring cost. | |
working_price¶ | enpowerx.types.v3.Price | The price per usage in kWh. | |
eco_percentage¶ | int32 | The percentage of environmentally friendly power generation. | |
graduated_prices¶ | ContractTariff.GraduatedPrice | repeated | The graduated prices belonging to this contract, if it is a contract based on graduated prices. |
is_price_adjustment¶ | bool | True if current tariff was created as a price adjustment of any previous tariff |
ContractTariff.GraduatedPrice¶
Field | Type | Rules | Description |
---|---|---|---|
start¶ | int32 | The starting range in kWh. | |
end¶ | int32 | The end range in kWh. | |
base_price¶ | enpowerx.types.v3.Price | The base price component of the graduated price. | |
working_prices¶ | ContractTariff.GraduatedPrice.WorkingPrice | repeated | The working price components (HT/NT) of the graduated price. |
ContractTariff.GraduatedPrice.WorkingPrice¶
Field | Type | Rules | Description |
---|---|---|---|
register_type¶ | RegisterType | The type of register this price is valid for. | |
price¶ | enpowerx.types.v3.Price | The actual working price. |
RegisterType¶
Name | Number | Description |
---|---|---|
REGISTER_TYPE_UNSPECIFIED | 0 | Type is not specified |
SINGLE_TARIFF | 1 | Single tariff meter |
DOUBLE_TARIFF_PEAK | 2 | aka Hochtarif (HT) |
DOUBLE_TARIFF_OFF_PEAK | 3 | aka Niedertarif (NT) |
Address¶
The address of a legal entity. At least one of the following must be set.
Field | Type | Rules | Description |
---|---|---|---|
email¶ | string | The email address. | |
phone¶ | string | The phone number. | |
mobile_phone¶ | string | The mobile phone number. | |
postal_address¶ | enpowerx.types.v3.PostalAddress | The postal address. |
Contact¶
Information on how to address a legal entity. A legal entity can be either a natural person or a company with an optional contact Natural Person: Must provide person
Company: Must provide company
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The resource's full qualified name. Use _customer_id when creating contacts while creating a customer. | |
etag¶ | string | The etag of the contact (for legal_contact the etag of the customer is used) REQUIRED for mutating requests | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*purpose¶ | string | The purpose the contact is meant to be used for. Known values are: - marketing - billing | |
annotations¶ | google.protobuf.Struct | Annotations for his contact. | |
person¶ | Person | The person. | |
company¶ | string | The company name. | |
*address¶ | Address | The address of the entity. |
Person¶
Field | Type | Rules | Description |
---|---|---|---|
salutation¶ | Person.SalutationForm | The salutation of the person. | |
title¶ | string | The title of the person. | |
*firstname¶ | string | The first name of the person. | |
*lastname¶ | string | The last name of the person. | |
birthday¶ | google.type.Date | The birthday of the person. |
Person.SalutationForm¶
Name | Number | Description |
---|---|---|
SALUTATION_FORM_UNSPECIFIED | 0 | The salutation form is unspecified. |
MRS | 1 | The salutation form is Mrs. . |
MR | 2 | The salutation form is Mr. . |
DIVERSE | 3 | The salutation form is Diverse . |
FAMILY | 4 | The salutation form is Family . |
Contracts¶
Manage contracts.
GetContract¶
Get a specific contract.
Input: GetContractRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The contract's full qualified name |
Output: Contract¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The resource's full qualified name | |
annotations¶ | google.protobuf.Struct | The resource's annotations | |
etag¶ | string | The etag of this contract to detect concurrent access collisions REQUIRED except for creating contract | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*subject¶ | Contract.Subject | The contract's subject | |
*billing_details¶ | BillingDetails | The current billing details associated of the contract. | |
*billing_cycle¶ | Contract.BillingCycle | The billing cycle for this contract. | |
*billing_contact¶ | string | The resource name of the billing contact for this contract. | |
target_invoice_date¶ | google.type.Date | The target invoice date to be used for this contract. - day set: The specified day is used every billed month. - month and day set: The day of month is used every year. - full date set: The specified day is used. | |
payment_due¶ | enpowerx.types.v3.Duration | The payment due duration to be applied on each and every invoice. For recurrence check target_invoice_date . | |
state¶ | StateEntry | output only | The current state of the contract. |
*period¶ | enpowerx.types.v3.DateRange | The contract period.end is set if the contract was already terminated or has a planned termination in the future.This period aggregates the complete renewal history. | |
minimum_duration¶ | enpowerx.types.v3.Duration | The minimum duration of the contract. | |
cancellation_period¶ | enpowerx.types.v3.Duration | The cancellation period of the contract. | |
next_cancellation_date¶ | google.type.Date | output only | The next date when a cancellation can take place. |
automatic_renewal_period¶ | enpowerx.types.v3.Duration | The renewal period of the contract. |
ContractB2CDetails¶
Only exists to generate b2c contract details messages.
(-- api-linter: core::0127::http-annotation=disabled
aip.dev/not-precedent: We need to do this because we want to generate documentation for unused messages. --)
Input: GetContractRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The contract's full qualified name |
ContractMonopolXDetails¶
Only exists to generate monopolX contract details messages.
(-- api-linter: core::0127::http-annotation=disabled
aip.dev/not-precedent: We need to do this because we want to generate documentation for unused messages. --)
Input: GetContractRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The contract's full qualified name |
ListContracts¶
List contracts with optional filters.
Input: ListContractsRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*parent¶ | string | The tenant the contract belongs to. | |
page_size¶ | int32 | The maximum number of items to return. 0 for default. | |
page_token¶ | string | The next_page_token value returned from a previous List request, if any. | |
filter¶ | string | The filter to be applied on all contracts. | |
order_by¶ | string | Comma separated list of fields to order by. Use - for descending order, e.g. "-next_cancellation_date". |
Output: ListContractsResponse¶
Field | Type | Rules | Description |
---|---|---|---|
contracts¶ | Contract | repeated | The requested contracts. |
next_page_token¶ | string | Token to retrieve the next page of results, or empty if there are no more results in the list. |
CreateContract¶
TODO: unklar
Create a contract.
Input: CreateContractRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*parent¶ | string | The resource's parent | |
*contract¶ | Contract | The contract to be created | |
contract_id¶ | string | The ID to use for the contract, which will become the final component of the contract's resource name. |
Output: Contract¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The resource's full qualified name | |
annotations¶ | google.protobuf.Struct | The resource's annotations | |
etag¶ | string | The etag of this contract to detect concurrent access collisions REQUIRED except for creating contract | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*subject¶ | Contract.Subject | The contract's subject | |
*billing_details¶ | BillingDetails | The current billing details associated of the contract. | |
*billing_cycle¶ | Contract.BillingCycle | The billing cycle for this contract. | |
*billing_contact¶ | string | The resource name of the billing contact for this contract. | |
target_invoice_date¶ | google.type.Date | The target invoice date to be used for this contract. - day set: The specified day is used every billed month. - month and day set: The day of month is used every year. - full date set: The specified day is used. | |
payment_due¶ | enpowerx.types.v3.Duration | The payment due duration to be applied on each and every invoice. For recurrence check target_invoice_date . | |
state¶ | StateEntry | output only | The current state of the contract. |
*period¶ | enpowerx.types.v3.DateRange | The contract period.end is set if the contract was already terminated or has a planned termination in the future.This period aggregates the complete renewal history. | |
minimum_duration¶ | enpowerx.types.v3.Duration | The minimum duration of the contract. | |
cancellation_period¶ | enpowerx.types.v3.Duration | The cancellation period of the contract. | |
next_cancellation_date¶ | google.type.Date | output only | The next date when a cancellation can take place. |
automatic_renewal_period¶ | enpowerx.types.v3.Duration | The renewal period of the contract. |
GetStateHistory¶
Get a specific contract's state history.
Input: GetStateHistoryRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The contract's full qualified name |
Output: StateHistory¶
Field | Type | Rules | Description |
---|---|---|---|
*entries¶ | StateEntry | repeated | The entries of the history. |
GetRenewalHistory¶
Get a specific contract's renewal history.
Input: GetRenewalHistoryRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The contract's full qualified name |
Output: RenewalHistory¶
Field | Type | Rules | Description |
---|---|---|---|
*entries¶ | RenewContractRequest | repeated | The entries of the history. |
RenewContract¶
Renew a contract.
Input: RenewContractRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The renewed contract. | |
*target_end_date¶ | google.type.Date | The next date when a cancellation can take place. | |
*initiator¶ | Initiator | The initiator for the renewal. | |
create_time¶ | google.protobuf.Timestamp | output only | The date the renewal was created. |
Output: RenewalHistory¶
Field | Type | Rules | Description |
---|---|---|---|
*entries¶ | RenewContractRequest | repeated | The entries of the history. |
GetBillingDetailsHistory¶
Get a specific contract's billing details history.
(-- api-linter: core::0127::http-template-syntax=disabled
aip.dev/not-precedent: We need to do this because otherwise we would have billing details as one word which
is not very readable --)
Input: GetBillingDetailsHistoryRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The contract's full qualified name |
Output: BillingDetailsHistory¶
Field | Type | Rules | Description |
---|---|---|---|
*entries¶ | BillingDetails | repeated | The history entries. |
RegisterBillingDetails¶
Register new billing details for a contract.
(-- api-linter: core::0127::http-template-syntax=disabled
aip.dev/not-precedent: We need to do this because otherwise we would have billing details as one word which
is not very readable --)
Input: BillingDetails¶
Field | Type | Rules | Description |
---|---|---|---|
*parent¶ | string | The contract the billing details belong to. | |
*active¶ | google.type.Date | The date these details start being active. The entry where min(|today-active|) | today>active is the currently active one. | |
bank_account_depositing¶ | string | The bank account for deposits attached to this contract. | |
bank_account_withdrawal¶ | string | The bank account for withdrawals to this contract. Required if method is DIRECT_DEBIT | |
sepa_mandate_reference¶ | string | SEPA mandate reference. Only for DIRECT_DEBIT | |
*payment_method¶ | PaymentMethod | immutable | The payment method used for withdrawals. |
Output: BillingDetailsHistory¶
Field | Type | Rules | Description |
---|---|---|---|
*entries¶ | BillingDetails | repeated | The history entries. |
CancelContract¶
Cancel a specific contract.
Input: ContractCancelRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The contract's full qualified name | |
*cancellation_reason¶ | string | The reason for the contract cancellation. | |
due_date¶ | google.type.Date | The date the cancellation shall take place. Waits until the end of the contract period if unset. | |
details¶ | google.protobuf.Any | Potential details for this cancellation. |
UpdateContract¶
Update contract.
Input: UpdateContractRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*contract¶ | Contract | The contract resource which replaces the resource on the server. | |
update_mask¶ | google.protobuf.FieldMask | The update mask applies to the resource. For the FieldMask definition,see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask only billing_contact can be updated |
Output: Contract¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The resource's full qualified name | |
annotations¶ | google.protobuf.Struct | The resource's annotations | |
etag¶ | string | The etag of this contract to detect concurrent access collisions REQUIRED except for creating contract | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*subject¶ | Contract.Subject | The contract's subject | |
*billing_details¶ | BillingDetails | The current billing details associated of the contract. | |
*billing_cycle¶ | Contract.BillingCycle | The billing cycle for this contract. | |
*billing_contact¶ | string | The resource name of the billing contact for this contract. | |
target_invoice_date¶ | google.type.Date | The target invoice date to be used for this contract. - day set: The specified day is used every billed month. - month and day set: The day of month is used every year. - full date set: The specified day is used. | |
payment_due¶ | enpowerx.types.v3.Duration | The payment due duration to be applied on each and every invoice. For recurrence check target_invoice_date . | |
state¶ | StateEntry | output only | The current state of the contract. |
*period¶ | enpowerx.types.v3.DateRange | The contract period.end is set if the contract was already terminated or has a planned termination in the future.This period aggregates the complete renewal history. | |
minimum_duration¶ | enpowerx.types.v3.Duration | The minimum duration of the contract. | |
cancellation_period¶ | enpowerx.types.v3.Duration | The cancellation period of the contract. | |
next_cancellation_date¶ | google.type.Date | output only | The next date when a cancellation can take place. |
automatic_renewal_period¶ | enpowerx.types.v3.Duration | The renewal period of the contract. |
ListMine¶
List contracts for the current customer (identity from OAuth token).
Input: ListContractsRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*parent¶ | string | The tenant the contract belongs to. | |
page_size¶ | int32 | The maximum number of items to return. 0 for default. | |
page_token¶ | string | The next_page_token value returned from a previous List request, if any. | |
filter¶ | string | The filter to be applied on all contracts. | |
order_by¶ | string | Comma separated list of fields to order by. Use - for descending order, e.g. "-next_cancellation_date". |
Output: ListContractsResponse¶
Field | Type | Rules | Description |
---|---|---|---|
contracts¶ | Contract | repeated | The requested contracts. |
next_page_token¶ | string | Token to retrieve the next page of results, or empty if there are no more results in the list. |
GetMine¶
Get a specific contract for the current customer (identity from OAuth token).
Input: MyContractRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*tenant¶ | string | The tenant the contract belongs to. | |
*id¶ | string | The contract's ID this request is targeting. |
Output: Contract¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The resource's full qualified name | |
annotations¶ | google.protobuf.Struct | The resource's annotations | |
etag¶ | string | The etag of this contract to detect concurrent access collisions REQUIRED except for creating contract | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*subject¶ | Contract.Subject | The contract's subject | |
*billing_details¶ | BillingDetails | The current billing details associated of the contract. | |
*billing_cycle¶ | Contract.BillingCycle | The billing cycle for this contract. | |
*billing_contact¶ | string | The resource name of the billing contact for this contract. | |
target_invoice_date¶ | google.type.Date | The target invoice date to be used for this contract. - day set: The specified day is used every billed month. - month and day set: The day of month is used every year. - full date set: The specified day is used. | |
payment_due¶ | enpowerx.types.v3.Duration | The payment due duration to be applied on each and every invoice. For recurrence check target_invoice_date . | |
state¶ | StateEntry | output only | The current state of the contract. |
*period¶ | enpowerx.types.v3.DateRange | The contract period.end is set if the contract was already terminated or has a planned termination in the future.This period aggregates the complete renewal history. | |
minimum_duration¶ | enpowerx.types.v3.Duration | The minimum duration of the contract. | |
cancellation_period¶ | enpowerx.types.v3.Duration | The cancellation period of the contract. | |
next_cancellation_date¶ | google.type.Date | output only | The next date when a cancellation can take place. |
automatic_renewal_period¶ | enpowerx.types.v3.Duration | The renewal period of the contract. |
Contract.Subject¶
Field | Type | Rules | Description |
---|---|---|---|
*display_name¶ | string | The subject's display name. | |
*kind¶ | string | The full-qualified protobuf message name of the details . | |
*details¶ | google.protobuf.Any | The subject specific details of a contract. |
ContractIDRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*tenant¶ | string | The tenant the contract belongs to. | |
*id¶ | string | The ID identifying the contract in the tenant's scope. |
StateEntry¶
Field | Type | Rules | Description |
---|---|---|---|
state¶ | StateEntry.State | output only | The state of the contract |
*active¶ | google.type.Date | The date the state became active. Active range is considered to be the interval between active and the next entry's active date. | |
*initiator¶ | Initiator | The initiator of this state change. | |
reason¶ | string | The reason for this state change. | |
details¶ | google.protobuf.Any | Potential details for this specific state change. |
Contract.BillingCycle¶
Name | Number | Description |
---|---|---|
BILLING_CYCLE_UNSPECIFIED | 0 | The contract is unspecified. |
ONCE | 1 | The contract is only billed once. |
DAILY | 2 | The contract is billed daily. |
MONTHLY | 3 | The contract is billed monthly. |
BI_MONTHLY | 4 | The contract is billed every other month. |
QUARTERLY | 5 | The contract is billed every three months. |
FOUR_MONTHLY | 6 | The contract is billed every four months. |
SEMI_ANNUAL | 7 | The contract is billed twice a year. |
ANNUAL | 8 | The contract is billed annually. |
Initiator¶
Name | Number | Description |
---|---|---|
INITIATOR_UNSPECIFIED | 0 | Event was initiated by an unknown entity. |
CUSTOMER | 1 | Event was initiated by Customer. |
AGENT | 2 | Event was initiated by Agent. |
PROVIDER | 3 | Event was initiated by Provider. |
SYSTEM | 4 | Event was initiated by System. |
StateEntry.State¶
Name | Number | Description |
---|---|---|
STATE_UNSPECIFIED | 0 | The contract state is unspecified. |
CREATING | 1 | The contract is newly created in 'contracting' and psfs is called to create the contract. |
CREATED | 2 | The contract is newly created in psfs and awaiting further processing. |
WAITING | 3 | The contract waiting for some business requirements to be pleased (acknowledgement from grid operator, ...) |
ACTIVE | 4 | The contract is active. |
CANCELLING | 5 | The contract cancellation has been requested. |
CANCELLED_ACTIVE | 6 | The cancellation is confirmed but the contract is still active. |
CANCELLED | 7 | The contract reached its cancellation date. |
ABORTING | 8 | Contract was in a invalid state and abortion has been requested. |
ABORTED | 9 | Contract has been aborted due to an invalid state. |
RENEWING | 10 | Contract renewal has been requested. |
EXPIRED | 11 | Contract has exceeded its time of validity. |
CustomerType¶
Represents the kind of the customer.
Name | Number | Description |
---|---|---|
CUSTOMER_TYPE_UNSPECIFIED | 0 | The customer type is unspecified. |
PRIVATE | 1 | The customer type is private. |
BUSINESS | 2 | The customer type is business. |
BOTH | 3 | The customer type is private and business. |
Customers¶
Manage customers.
GetCustomer¶
Get a specific customer.
Input: GetCustomerRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The customer's full qualified name. |
Output: Customer¶
Field | Type | Rules | Description |
---|---|---|---|
name¶ | string | output only | The resource's full qualified name. |
annotations¶ | google.protobuf.Struct | The resource's annotations. | |
etag¶ | string | The etag of this customer to detect concurrent access collisions REQUIRED except for creating customer | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*type¶ | CustomerType | The type of this customer. | |
person¶ | Person | The legal contact for this customer. At least one of person or company is required The person. | |
company¶ | string | The company name. | |
*address¶ | Address | The address of the entity. | |
contacts¶ | Contact | repeated | The other contacts for this customer; this could be marketing or alternative billing contacts. |
CreateCustomer¶
Create a specific customer.
If a customer with the the same 'legal_contact' already exists,
the request will fail with ALREADY_EXISTS and return the existing customer's name.
Input: CreateCustomerRequest¶
(-- api-linter: core::0133::request-id-field=disabled aip.dev/not-precedent: We need to do this because contracting service generates a unique customer number. --)
Field | Type | Rules | Description |
---|---|---|---|
*parent¶ | string | The resource's parent | |
*customer¶ | Customer | The customer to be created |
Output: Customer¶
Field | Type | Rules | Description |
---|---|---|---|
name¶ | string | output only | The resource's full qualified name. |
annotations¶ | google.protobuf.Struct | The resource's annotations. | |
etag¶ | string | The etag of this customer to detect concurrent access collisions REQUIRED except for creating customer | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*type¶ | CustomerType | The type of this customer. | |
person¶ | Person | The legal contact for this customer. At least one of person or company is required The person. | |
company¶ | string | The company name. | |
*address¶ | Address | The address of the entity. | |
contacts¶ | Contact | repeated | The other contacts for this customer; this could be marketing or alternative billing contacts. |
UpdateCustomer¶
Update a customer.
Input: UpdateCustomerRequest¶
Field | Type | Rules | Description |
---|---|---|---|
customer¶ | Customer | The customer resource which replaces the resource on the server. | |
update_mask¶ | google.protobuf.FieldMask | The update mask applies to the resource. For the FieldMask definition,see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask |
Output: Customer¶
Field | Type | Rules | Description |
---|---|---|---|
name¶ | string | output only | The resource's full qualified name. |
annotations¶ | google.protobuf.Struct | The resource's annotations. | |
etag¶ | string | The etag of this customer to detect concurrent access collisions REQUIRED except for creating customer | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*type¶ | CustomerType | The type of this customer. | |
person¶ | Person | The legal contact for this customer. At least one of person or company is required The person. | |
company¶ | string | The company name. | |
*address¶ | Address | The address of the entity. | |
contacts¶ | Contact | repeated | The other contacts for this customer; this could be marketing or alternative billing contacts. |
ListCustomers¶
List customers with optional filters.
Input: ListCustomersRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*parent¶ | string | The tenant the contract belongs to. | |
page_size¶ | int32 | The maximum number of items to return. 0 for default. | |
page_token¶ | string | The next_page_token value returned from a previous List request, if any. | |
filter¶ | string | The filter to be applied on all customers. | |
order_by¶ | string | Comma separated list of fields to order by. Use - for descending order, e.g. "-last_name". |
Output: ListCustomersResponse¶
Field | Type | Rules | Description |
---|---|---|---|
customers¶ | Customer | repeated | The requested customers. |
next_page_token¶ | string | Token to retrieve the next page of results, or empty if there are no more results in the list. |
GetMe¶
Get the current customer (identity from OAuth token).
(-- api-linter: core::0131::response-message-name=disabled
aip.dev/not-precedent: We need to do this because we want to return the customer object of the requester. --)
Input: GetMeRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The tenant the customer belongs to. |
Output: Customer¶
Field | Type | Rules | Description |
---|---|---|---|
name¶ | string | output only | The resource's full qualified name. |
annotations¶ | google.protobuf.Struct | The resource's annotations. | |
etag¶ | string | The etag of this customer to detect concurrent access collisions REQUIRED except for creating customer | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*type¶ | CustomerType | The type of this customer. | |
person¶ | Person | The legal contact for this customer. At least one of person or company is required The person. | |
company¶ | string | The company name. | |
*address¶ | Address | The address of the entity. | |
contacts¶ | Contact | repeated | The other contacts for this customer; this could be marketing or alternative billing contacts. |
ImpersonateCustomer¶
Impersonate a customer. The impersonating identity is taken from the OAuth token.
Input: GetCustomerRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The customer's full qualified name. |
GetBankAccount¶
Get a bank account.
(-- api-linter: core::0127::http-template-syntax=disabled
aip.dev/not-precedent: We need to do this because otherwise we would have bank accounts as one word which
is not very readable --)
Input: GetBankAccountRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The bank account's full qualified name. |
Output: BankAccount¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The resource's full qualified name. | |
etag¶ | string | The etag of the bank account REQUIRED for mutating requests | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*account_holder¶ | string | The full name of the bank account holder. | |
*iban¶ | string | The International Bank Account Number. | |
bic¶ | string | The Bank Identifier Code. | |
bank¶ | string | The name of the bank. |
CreateBankAccount¶
Create a new bank account for a customer.
(-- api-linter: core::0127::http-template-syntax=disabled
aip.dev/not-precedent: We need to do this because otherwise we would have bank accounts as one word which
is not very readable --)
Input: CreateBankAccountRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*parent¶ | string | The resource's parent | |
*bank_account¶ | BankAccount | The bank account to be created | |
bank_account_id¶ | string | The ID to use for the bank account, which will become the final component of the bank account's resource name. |
Output: BankAccount¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The resource's full qualified name. | |
etag¶ | string | The etag of the bank account REQUIRED for mutating requests | |
update_time¶ | google.protobuf.Timestamp | output only | The timestamp that the resource was updated. |
*account_holder¶ | string | The full name of the bank account holder. | |
*iban¶ | string | The International Bank Account Number. | |
bic¶ | string | The Bank Identifier Code. | |
bank¶ | string | The name of the bank. |
ListBankAccounts¶
List bank accounts for a customer.
(-- api-linter: core::0127::http-template-syntax=disabled
aip.dev/not-precedent: We need to do this because otherwise we would have bank accounts as one word which
is not very readable --)
Input: ListBankAccountsRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*parent¶ | string | The customer the bank account belongs to. | |
page_size¶ | int32 | The maximum number of items to return. 0 for default. | |
page_token¶ | string | The next_page_token value returned from a previous List request, if any. | |
filter¶ | string | The filter to be applied on all customers. | |
order_by¶ | string | Comma separated list of fields to order by. Use - for descending order, e.g. "-account_holder". |
Output: ListBankAccountsResponse¶
Field | Type | Rules | Description |
---|---|---|---|
bank_accounts¶ | BankAccount | repeated | The requested bank accounts. |
next_page_token¶ | string | Token to retrieve the next page of results, or empty if there are no more results in the list. |
GetContact¶
Get a specific contact.
Input: GetContactRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The contact's full qualified name |
CreateContact¶
Create a contact.
Input: CreateContactRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*parent¶ | string | The resource's parent. | |
*contact¶ | Contact | The contact to be created | |
contact_id¶ | string | The ID to use for the contact, which will become the final component of the contact's resource name. |
UpdateContact¶
Update a contact.
Input: UpdateContactRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*contact¶ | Contact | The contact resource which replaces the resource on the server. | |
update_mask¶ | google.protobuf.FieldMask | The update mask applies to the resource. For the FieldMask definition,see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask |
BankAccountRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*name¶ | string | The resource's full qualified name. |
EnergyDelivery¶
Describes which kind and amount of energy is to be delivered to where.
Field | Type | Rules | Description |
---|---|---|---|
*energy_type¶ | enpowerx.types.v3.Commodity | The kind of the energy. | |
*customer_type¶ | CustomerType | The kind of the customer. | |
*address¶ | enpowerx.types.v3.PostalAddress | The address to deliver energy to. | |
annual_usage¶ | int32 | The estimated power usage in kWh per year. | |
usage_type¶ | EnergyDelivery.UsageType | The usage type for the delivered energy. | |
annual_usage_nt¶ | int32 | The estimated off-peak power usage in kWh per year (DE: Niedertarifverbrauch). |
EnergyDelivery.UsageType¶
Name | Number | Description |
---|---|---|
USAGE_TYPE_UNSPECIFIED | 0 | The consumption type is unspecified. |
HOUSEHOLD_ELECTRICITY | 1 | The energy is used for household. |
CHARGING_CURRENT | 2 | The energy is used for charging. |
STORAGE_HEATER | 3 | The energy is used for a storage heater. |
HEAT_PUMP | 4 | The energy is used for a heat pump. |
HOUSEHOLD_ELECTRICITY_AND_STORAGE_HEATER | 5 | The energy is used for household with storage heater. |
HOUSEHOLD_ELECTRICITY_AND_HEAT_PUMP | 6 | The energy is used for household with heat pump. |
ContractAborted¶
Field | Type | Rules | Description |
---|---|---|---|
contract¶ | Contract | The aborted contract. |
ContractCancelled¶
Field | Type | Rules | Description |
---|---|---|---|
contract¶ | Contract | The cancelled contract. |
ContractCreated¶
Field | Type | Rules | Description |
---|---|---|---|
contract¶ | Contract | The created contract. |
ContractRenewed¶
Field | Type | Rules | Description |
---|---|---|---|
contract¶ | Contract | The renewed contract. |
ContractUpdated¶
Field | Type | Rules | Description |
---|---|---|---|
contract¶ | Contract | The updated contract. |
CustomerBankAccountCreated¶
Field | Type | Rules | Description |
---|---|---|---|
bank_account¶ | BankAccount | The created bank account. |
CustomerCreated¶
Field | Type | Rules | Description |
---|---|---|---|
customer¶ | Customer | The created customer. |
CustomerUpdated¶
Field | Type | Rules | Description |
---|---|---|---|
customer¶ | Customer | The updated customer. |
MonopolXContractSubjectDetails¶
Field | Type | Rules | Description |
---|---|---|---|
*energy_type¶ | enpowerx.types.v3.Commodity | The kind of the energy. | |
*delivery_location¶ | MonopolXContractSubjectDetails.DeliveryLocation | The delivery locations associated with the contract. | |
meters¶ | MonopolXContractSubjectDetails.Meter | output only repeated | The meters associated with the contract. |
*consumption_prognosis¶ | MonopolXContractSubjectDetails.ConsumptionPrognosis | The consumption prognosis associated with the contract. | |
*product¶ | string | The product associated with this contract. | |
create_time¶ | google.protobuf.Timestamp | output only | The creation time of the contract. |
update_time¶ | google.protobuf.Timestamp | output only | The last update time of the contract. |
MonopolXContractSubjectDetails.ConsumptionPrognosis¶
Field | Type | Rules | Description |
---|---|---|---|
validity_start_date¶ | google.type.Date | Date from which the prognosis will be valid, if not set the date will be determined by the following rules: - The contract's start data on contract creating - The current date on contract updating | |
*prognosis¶ | enpowerx.types.v3.Decimal | Estimated annual consumption prognosis. |
MonopolXContractSubjectDetails.DeliveryLocation¶
Field | Type | Rules | Description |
---|---|---|---|
malo¶ | string | output only | The MaLo (DE: Marktlokation) associated with delivery location. |
*installation¶ | string | Reference to the installation (DE: Anlage) of the delivery location. | |
floor¶ | string | output only | Floor of the building or other more specific description if the premise (DE: Verbrauchsstelle). |
address¶ | enpowerx.types.v3.PostalAddress | output only | Address of the connection object (DE: Anschlussobjekt) |
geo_location¶ | google.type.LatLng | output only | Geolocation |
MonopolXContractSubjectDetails.Meter¶
Field | Type | Rules | Description |
---|---|---|---|
device¶ | string | output only | The device associated with the meter. |
meter_number¶ | string | output only | The number of the meter |
melo¶ | string | output only | The MeLo (DE: Messlokation) associated with the meter. |
PaymentMethod¶
Possible methods for paying invoices.
Name | Number | Description |
---|---|---|
PAYMENT_METHOD_UNSPECIFIED | 0 | The payment method method is unspecified. |
DIRECT_DEBIT | 1 | Money is automatically withdrawn from the specified bank account. |
MANUAL_TRANSFER | 2 | The customer pays bills manually using money transfers. |
RecurringCost¶
Represents a price/cost that repeats at a fixed interval.
Field | Type | Rules | Description |
---|---|---|---|
*price¶ | enpowerx.types.v3.Price | The price per interval. | |
*interval¶ | google.type.CalendarPeriod | The interval at which the cost occurs (per day, month, etc.). |
Shared Types¶
Amount¶
Field | Type | Rules | Description |
---|---|---|---|
unit¶ | string | The unit of the amount. E.g.'kWh' or 'PCS' for pieces. | |
units¶ | int64 | The whole units of the amount. For example if unit is "PCS" , then 1 unit is one piece. | |
nanos¶ | int32 | Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If units is positive, nanos must be positive or zero.If units is zero, nanos can be positive, zero, or negative.If units is negative, nanos must be negative or zero.For example $-1.75 is represented as units =-1 and nanos =-750,000,000. |
BankAccount¶
Information about a bank account.
Field | Type | Rules | Description |
---|---|---|---|
*iban¶ | string | The International Bank Account Number. | |
bic¶ | string | The Bank Identifier Code. | |
account_holder¶ | string | The name of the account holder. | |
bank¶ | string | The name of the bank. |
CustomerType¶
Represents the kind of the customer.
Name | Number | Description |
---|---|---|
CUSTOMER_TYPE_UNSPECIFIED | 0 | The customer type is unspecified. |
PRIVATE | 1 | The customer type is private. |
BUSINESS | 2 | The customer type is business. |
BOTH | 3 | The customer type is private and business. |
DateRange¶
Represents a range of dates.
Field | Type | Rules | Description |
---|---|---|---|
*start¶ | google.type.Date | The inclusive start date. | |
end¶ | google.type.Date | The inclusive end date. | |
end_exclusive¶ | google.type.Date | The exclusive end date. | |
time_zone¶ | string | The time zone of the date range (defaults to Europe/Berlin). |
DateTimeRange¶
Represents a range of date times.
Field | Type | Rules | Description |
---|---|---|---|
*start¶ | google.protobuf.Timestamp | The inclusive start date. | |
end¶ | google.protobuf.Timestamp | The inclusive end date. |
Decimal¶
Field | Type | Rules | Description |
---|---|---|---|
units¶ | int64 | The whole units of the amount. | |
nanos¶ | int32 | Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If units is positive, nanos must be positive or zero.If units is zero, nanos can be positive, zero, or negative.If units is negative, nanos must be negative or zero.For example $-1.75 is represented as units =-1 and nanos =-750,000,000. |
Billing¶
Billing details.
Field | Type | Rules | Description |
---|---|---|---|
*contact¶ | Contact | The contact to send invoices to. | |
*payment_method¶ | PaymentMethod | The payment method method. | |
bank_account¶ | BankAccount | The bank account used if payment_method is DIRECT_DEBIT . |
CommunicationChannel¶
Communication channel.
Name | Number | Description |
---|---|---|
COMMUNICATION_CHANNEL_UNSPECIFIED | 0 | Channel not specified. |
LETTER | 1 | Send messages via letter. |
2 | Send messages via email. | |
SMS | 3 | Send messages via SMS. |
MESSENGER | 4 | Send messages via messenger apps like WhatsApp. |
PHONE | 5 | Communicate via telephone. |
Contact¶
Contact details (postal, phone, etc.).
Field | Type | Rules | Description |
---|---|---|---|
*person¶ | Person | Information on how to address the contact. | |
postal_address¶ | PostalAddress | The contact's postal address. | |
phone_number¶ | string | The phone number of the contact. Values are normalized into the form +123456789 . | |
email¶ | string | The email address of the contact. | |
careof¶ | Person | A person that may receive communication in the name of the actual recipient (e.g. a "C/O" line added to the postal address). |
Reading¶
Information about a reading.
Field | Type | Rules | Description |
---|---|---|---|
*date¶ | google.type.Date | The date when the reading was taken. | |
channel¶ | Reading.Channel | How the reading was reported. This is value is ignored when submitting via AddMine . | |
*values¶ | Reading.ValuesEntry | repeated | A map of values to submit with OBIS codes as the key. |
ignore_plausibility_check_reason¶ | google.protobuf.StringValue | If set the meter reading(s) will be saved, even if they're not plausible. Specifies the reason why the plausibility check is to be ignored. |
Reading.ValuesEntry¶
Field | Type | Rules | Description |
---|---|---|---|
key¶ | string | ||
value¶ | double |
Reading.Channel¶
Name | Number | Description |
---|---|---|
CHANNEL_UNSPECIFIED | 0 | No channel specified. |
PORTAL | 1 | Reported via end-user portal. |
2 | Reported via email. | |
LETTER | 3 | Reported via letter. |
PHONE | 4 | Reported via phone call. |
MSCONS | 5 | Reported via Metered Services Consumption report message. |
Relocation¶
Information about the relocation of an contract.
Field | Type | Rules | Description |
---|---|---|---|
*contract¶ | string | The contract's ID this request is targeting. | |
*moveout_date¶ | google.type.Date | The move-out date. | |
*movein_date¶ | google.type.Date | The move-in date. | |
*delivery¶ | EnergyDelivery | Which kind and amount of energy is to be delivered to where. | |
*use_new_address¶ | Relocation.UseNewAddress | Use the new address as postal and billing address. | |
*meter¶ | string | The ID of the meter at the new consumption point. | |
last_reading¶ | Reading | The last reading at the old consumption point. | |
old_meter¶ | string | The ID of the meter at the old consumption point. Optional, must be set if a last reading is provided. |
Relocation.UseNewAddress¶
Name | Number | Description |
---|---|---|
USE_NEW_ADDRESS_UNSPECIFIED | 0 | Use unspecified. |
NO | 1 | Use not desired. |
IMMEDIATELY | 2 | Use immediately desired. |
ON_MOVE_IN | 3 | Use on moving in desired. |
SalesInfo¶
Information on how a sale was made.
Field | Type | Rules | Description |
---|---|---|---|
sales_partner_code¶ | string | Direct sales partner code. | |
sales_partner_code_second¶ | string | Second direct sales partner code. | |
campaign¶ | string | Optional override for the default campaign. |
ScheduledRequest¶
Reference to an entity with an optional scheduled starting date.
Field | Type | Rules | Description |
---|---|---|---|
*id¶ | string | The ID referencing the entity. | |
scheduled_date¶ | google.type.Date | The scheduled starting date (earliest possible if unset). |
TransitionType¶
Specifies modalities of a contract transition.
Name | Number | Description |
---|---|---|
TRANSITION_TYPE_UNSPECIFIED | 0 | The transition type is unspecified |
MANUAL_TERMINATION | 1 | The customer terminates the prior contract. |
VENDOR_TERMINATION | 2 | The vendor terminates the prior contract. |
RELOCATION | 3 | The customer is going to or has recently moved to the new address. |
Duration¶
Represents a coarse time duration (e.g., 2 months).
Field | Type | Rules | Description |
---|---|---|---|
*units¶ | int32 | The number of time units. | |
*type¶ | google.type.CalendarPeriod | The type the units refer to (days, months, etc.). |
EnergyDelivery¶
Describes which kind and amount of energy is to be delivered to where.
Field | Type | Rules | Description |
---|---|---|---|
*energy_type¶ | EnergyType | The kind of the energy. | |
*customer_type¶ | CustomerType | The kind of the customer. | |
*address¶ | PostalAddress | The address to deliver energy to. | |
annual_usage¶ | int32 | The estimated power usage in kWh per year. | |
usage_type¶ | EnergyDelivery.UsageType | The usage type for the delivered energy. | |
annual_usage_nt¶ | int32 | The estimated off-peak power usage in kWh per year (DE: Niedertarifverbrauch). |
EnergyDelivery.UsageType¶
Name | Number | Description |
---|---|---|
USAGE_TYPE_UNSPECIFIED | 0 | The consumption type is unspecified. |
HOUSEHOLD_ELECTRICITY | 1 | The energy is used for household. |
CHARGING_CURRENT | 2 | The energy is used for charging. |
STORAGE_HEATER | 3 | The energy is used for a storage heater. |
HEAT_PUMP | 4 | The energy is used for a heat pump. |
HOUSEHOLD_ELECTRICITY_AND_STORAGE_HEATER | 5 | The energy is used for household with storage heater. |
HOUSEHOLD_ELECTRICITY_AND_HEAT_PUMP | 6 | The energy is used for household with heat pump. |
EnergyType¶
Represents the kind of the energy.
Name | Number | Description |
---|---|---|
ENERGY_TYPE_UNSPECIFIED | 0 | The energy type is unspecified. |
ELECTRICITY | 1 | The energy type is electricity. |
GAS | 2 | The energy type is gas. |
FileContent¶
Field | Type | Rules | Description |
---|---|---|---|
*mime_type¶ | string | The media type / content type of the document. | |
*content¶ | bytes | The raw data of the document. |
AnnotationFilter¶
AnnotationFilter provides filter semantics for annotations.
Field | Type | Rules | Description |
---|---|---|---|
*field¶ | string | The annotation field path is a symbolic field path to target an annotation's field, for example: "invoice.id", "is_consumption_based", ... | |
value¶ | google.protobuf.Value | The value to match the annotation field's value. |
DateFilter¶
DateFilter provides match semantics for date fields.
Field | Type | Rules | Description |
---|---|---|---|
*date¶ | google.type.Date | The date to filter for. | |
match_mode¶ | DateFilter.MatchMode | The match mode to use. The default is EQUAL. |
DateRangeFilter¶
DateTimeRangeFilter provides match semantics for date fields. The filter treats the start and end date as inclusive.
Field | Type | Rules | Description |
---|---|---|---|
*start_date¶ | google.type.Date | The start date to filter for. | |
*end_date¶ | google.type.Date | The end date to filter for. |
DateTimeFilter¶
DateTimeFilter provides match semantics for date time fields.
Field | Type | Rules | Description |
---|---|---|---|
*time¶ | google.protobuf.Timestamp | The date time to filter for. | |
match_mode¶ | DateTimeFilter.MatchMode | The match mode to use. The default is EQUAL. |
DateTimeRangeFilter¶
DateTimeRangeFilter provides match semantics for date time fields.
Field | Type | Rules | Description |
---|---|---|---|
*start_time¶ | google.protobuf.Timestamp | The start date time to filter for. | |
*end_time¶ | google.protobuf.Timestamp | The end date time to filter for. |
StringListFilter¶
Strings filter x IN and x NOT IN semantics.
Field | Type | Rules | Description |
---|---|---|---|
*values¶ | string | repeated | The value to filter for. |
negate¶ | bool | If true the expression is negated. |
StringScalarFilter¶
StringFilter provides match semantics for strings fields.
Field | Type | Rules | Description |
---|---|---|---|
*value¶ | string | The value to filter for. | |
match_mode¶ | StringScalarFilter.MatchMode | The match mode to use. | |
negate¶ | bool | If true the expression is negated. |
DateFilter.MatchMode¶
Name | Number | Description |
---|---|---|
MATCH_MODE_UNSPECIFIED | 0 | The match mode is unspecified. |
EQUAL | 1 | Filter only matches if the date is equal to the provided date. |
BEFORE | 2 | Filter matches all dates that are before the provided date. |
AFTER | 3 | Filter matches all dates that are after the provided date. |
BEFORE_OR_EQUAL | 4 | Filter matches all dates that are before or equal to the provided date. |
AFTER_OR_EQUAL | 5 | Filter matches all dates that are after or equal to the provided date. |
DateTimeFilter.MatchMode¶
Name | Number | Description |
---|---|---|
MATCH_MODE_UNSPECIFIED | 0 | The match mode is unspecified. |
EQUAL | 1 | Filter only matches if the date is equal to the provided date. |
BEFORE | 2 | Filter matches all dates that are before the provided date. |
AFTER | 3 | Filter matches all dates that are after the provided date. |
BEFORE_OR_EQUAL | 4 | Filter matches all dates that are before or equal to the provided date. |
AFTER_OR_EQUAL | 5 | Filter matches all dates that are after or equal to the provided date. |
StringScalarFilter.MatchMode¶
Name | Number | Description |
---|---|---|
MATCH_MODE_UNSPECIFIED | 0 | The match mode is unspecified. |
EXACT | 1 | Filter only matches if the field contains exactly the expected value. |
PREFIX | 2 | Filter matches all fields that are prefixed with the given value. |
SUFFIX | 3 | Filter matches all fields that are suffixed with the given value. |
SUBSTRING | 4 | Filter matches all fields that contain the given value. |
LetterAddress¶
Combines a name and a postal address.
Field | Type | Rules | Description |
---|---|---|---|
*person¶ | Person | The person being addressed. | |
careof¶ | string | A person that may receive letters in the name of the actual recipient (e.g. a "C/O" line added to the postal address). | |
*postal_address¶ | PostalAddress | The postal address. |
MonthOfYear¶
Represents a month of a year.
Field | Type | Rules | Description |
---|---|---|---|
month¶ | int32 | Month of the year. | |
year¶ | int32 | Year. |
PaymentMethod¶
Possible methods for paying invoices.
Name | Number | Description |
---|---|---|
PAYMENT_METHOD_UNSPECIFIED | 0 | The payment method method is unspecified. |
DIRECT_DEBIT | 1 | Money is automatically withdrawn from the specified bank account. |
MANUAL_TRANSFER | 2 | The customer pays bills manually using money transfers. |
Period¶
A period of time with inclusive start and inclusive and exclusive end time. If both (inclusive and exclusive) ends are specified, they must be consistent. If no end is specified, the period is considered unbounded on the end. If the time is unspecified it is considered to be 00:00:00.000000000 for the start (and exclusive end) and 23:59:59.999999999 for the inclusive end.
The following example represents a period of time from 2006-01-01 to 2006-01-31: { start_time: { hours: 0 minutes: 0 seconds: 0 nanos: 0 } start_date: { year: 2006 month: 1 day: 1 } end_time: { hours: 23 minutes: 59 seconds: 59 nanos: 999999999 } end_date: { year: 2006 month: 1 day: 31 } end_date_exclusive: { year: 2006 month: 2 day: 1 } end_time_exclusive: { hours: 0 minutes: 0 seconds: 0 nanos: 0 } }
Field | Type | Rules | Description |
---|---|---|---|
start_time¶ | google.type.TimeOfDay | The start time of the period (inclusive). | |
end_time¶ | google.type.TimeOfDay | The end time of the period (inclusive). | |
start_date¶ | google.type.Date | The start date of the period (inclusive). | |
end_date¶ | google.type.Date | The end date of the period (inclusive). | |
end_time_exclusive¶ | google.type.TimeOfDay | The end time of the period (exclusive). | |
end_date_exclusive¶ | google.type.Date | The end date of the period (exclusive). | |
time_zone¶ | string | The time zone of the period (defaults to Europe/Berlin). |
Person¶
Information on how to address a person. A person can be either a natural person or a company with an optional contact Natural Person: Must provide firstname, lastname Company: Must provide company
Field | Type | Rules | Description |
---|---|---|---|
salutation¶ | Person.SalutationForm | The salutation of the person. | |
title¶ | string | The title of the person. | |
firstname¶ | string | The first name of the person. | |
lastname¶ | string | The last name of the person. | |
birthday¶ | google.type.Date | The birthday of the person. | |
company¶ | string | The company name. |
Person.SalutationForm¶
Name | Number | Description |
---|---|---|
SALUTATION_FORM_UNSPECIFIED | 0 | The salutation form is unspecified. |
MRS | 1 | The salutation form is Mrs. . |
MR | 2 | The salutation form is Mr. . |
DIVERSE | 3 | The salutation form is Diverse . |
FAMILY | 4 | The salutation form is Family . |
PostalAddress¶
Represents a postal address, e.g. for postal delivery or payments addresses.
Field | Type | Rules | Description |
---|---|---|---|
*region¶ | string | The region the address is located in as a CLDR region code. Example: DE for Germany | |
*postal_code¶ | string | A postal code of the city (a city may have more than one). Example: 76131 for Karlsruhe inner city | |
*city¶ | string | The canonical name of the city (there may be more than one per postal code). Example: Karlsruhe | |
street¶ | string | The canonical name of the street. Example: Kaiserstr. | |
house_number¶ | string | The house number. Examples: 32 , 32a , 32/1 | |
postbox_number¶ | string | Postbox number in case address is a postbox. | |
district¶ | string | Administrative division (i.e. Stadtteil). | |
additional_address_lines¶ | string | repeated | Additional address lines Example: Appartment 104, Care of etc. |
Price¶
Represents a price before and after taxes.
Field | Type | Rules | Description |
---|---|---|---|
*net¶ | google.type.Money | The price without VAT. | |
*gross¶ | google.type.Money | The price including VAT. | |
unit¶ | string | The unit the price is related to (e.g "kWh", "PCS", "month", etc.) |
Quantity¶
Field | Type | Rules | Description |
---|---|---|---|
unit¶ | string | The unit of the quantity. E.g.'kWh' or 'PCS' for pieces. | |
units¶ | int64 | The whole units of the quantity. For example if unit is "PCS" , then 1 unit is one piece. | |
nanos¶ | int32 | Number of nano (10^-9) units of the quantity. The value must be between -999,999,999 and +999,999,999 inclusive. If units is positive, nanos must be positive or zero.If units is zero, nanos can be positive, zero, or negative.If units is negative, nanos must be negative or zero.For example $-1.75 is represented as units =-1 and nanos =-750,000,000. |
RecurringCost¶
Represents a price/cost that repeats at a fixed interval.
Field | Type | Rules | Description |
---|---|---|---|
*price¶ | Price | The price per interval. | |
*interval¶ | google.type.CalendarPeriod | The interval at which the cost occurs (per day, month, etc.). |
TenantScopedListRequest¶
Field | Type | Rules | Description |
---|---|---|---|
*tenant¶ | string | The tenant the list belongs to. | |
page_size¶ | int32 | The maximum number of items to return. 0 for default. | |
page_token¶ | string | The next_page_token value returned from a previous List request, if any. |
TenantScopedResource¶
A tenant scoped resource.
Field | Type | Rules | Description |
---|---|---|---|
*tenant¶ | string | The tenant the resource belongs to. | |
*id¶ | string | The ID of the resource. |
TimeRange¶
A range of time with inclusive start, inclusive and exclusive end time. If both (inclusive and exclusive) ends are specified, they must be consistent. If no end is specified, the period is considered unbounded on the end.
Field | Type | Rules | Description |
---|---|---|---|
start¶ | google.protobuf.Timestamp | The inclusive start. | |
end¶ | google.protobuf.Timestamp | The inclusive end. | |
end_exclusive¶ | google.protobuf.Timestamp | The exclusive end. |
File-level Extensions¶
Extension | Type | Base | Number | Description |
---|---|---|---|---|
throws | string | .google.protobuf.MethodOptions | 76131 | throws is used to document error messages that the method might return in status.details. |
CalendarPeriod¶
A CalendarPeriod
represents the abstract concept of a time period that has a canonical start. Grammatically, "the start of the current CalendarPeriod
." All calendar times begin at midnight UTC.
Name | Number | Description |
---|---|---|
CALENDAR_PERIOD_UNSPECIFIED | 0 | Undefined period, raises an error. |
DAY | 1 | A day. |
WEEK | 2 | A week. Weeks begin on Monday, following ISO 8601. |
FORTNIGHT | 3 | A fortnight. The first calendar fortnight of the year begins at the start of week 1 according to ISO 8601. |
MONTH | 4 | A month. |
QUARTER | 5 | A quarter. Quarters start on dates 1-Jan, 1-Apr, 1-Jul, and 1-Oct of each year. |
HALF | 6 | A half-year. Half-years start on dates 1-Jan and 1-Jul. |
YEAR | 7 | A year. |
Date¶
Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following:
- A full date, with non-zero year, month, and day values
- A month and day value, with a zero year, such as an anniversary
- A year on its own, with zero month and day values
- A year and month value, with a zero day, such as a credit card expiration date
Related types are [google.type.TimeOfDay][google.type.TimeOfDay] and google.protobuf.Timestamp
.
Field | Type | Rules | Description |
---|---|---|---|
year¶ | int32 | Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. | |
month¶ | int32 | Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. | |
day¶ | int32 | Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. |
Money¶
Represents an amount of money with its currency type.
Field | Type | Rules | Description |
---|---|---|---|
currency_code¶ | string | The three-letter currency code defined in ISO 4217. | |
units¶ | int64 | The whole units of the amount. For example if currencyCode is "USD" , then 1 unit is one US dollar. | |
nanos¶ | int32 | Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If units is positive, nanos must be positive or zero.If units is zero, nanos can be positive, zero, or negative.If units is negative, nanos must be negative or zero.For example $-1.75 is represented as units =-1 and nanos =-750,000,000. |