energy

package
v0.1.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 27, 2023 License: MIT Imports: 10 Imported by: 0

Documentation

Overview

Package energy provides primitives to interact with the openapi HTTP API.

Code generated by github.com/deepmap/oapi-codegen version v1.11.0 DO NOT EDIT.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewGetAccountRequest

func NewGetAccountRequest(server string, accountId AccountId, params *GetAccountParams) (*http.Request, error)

NewGetAccountRequest generates requests for GetAccount

func NewGetBalanceForAccountRequest

func NewGetBalanceForAccountRequest(server string, accountId AccountId, params *GetBalanceForAccountParams) (*http.Request, error)

NewGetBalanceForAccountRequest generates requests for GetBalanceForAccount

func NewGetBillingForAccountRequest

func NewGetBillingForAccountRequest(server string, accountId AccountId, params *GetBillingForAccountParams) (*http.Request, error)

NewGetBillingForAccountRequest generates requests for GetBillingForAccount

func NewGetConcessionsRequest

func NewGetConcessionsRequest(server string, accountId AccountId, params *GetConcessionsParams) (*http.Request, error)

NewGetConcessionsRequest generates requests for GetConcessions

func NewGetDERForServicePointRequest

func NewGetDERForServicePointRequest(server string, servicePointId ServicePointId, params *GetDERForServicePointParams) (*http.Request, error)

NewGetDERForServicePointRequest generates requests for GetDERForServicePoint

func NewGetInvoicesForAccountRequest

func NewGetInvoicesForAccountRequest(server string, accountId AccountId, params *GetInvoicesForAccountParams) (*http.Request, error)

NewGetInvoicesForAccountRequest generates requests for GetInvoicesForAccount

func NewGetPaymentScheduleRequest

func NewGetPaymentScheduleRequest(server string, accountId AccountId, params *GetPaymentScheduleParams) (*http.Request, error)

NewGetPaymentScheduleRequest generates requests for GetPaymentSchedule

func NewGetPlanRequest

func NewGetPlanRequest(server string, planId string, params *GetPlanParams) (*http.Request, error)

NewGetPlanRequest generates requests for GetPlan

func NewGetServicePointRequest

func NewGetServicePointRequest(server string, servicePointId ServicePointId, params *GetServicePointParams) (*http.Request, error)

NewGetServicePointRequest generates requests for GetServicePoint

func NewGetUsageForServicePointRequest

func NewGetUsageForServicePointRequest(server string, servicePointId ServicePointId, params *GetUsageForServicePointParams) (*http.Request, error)

NewGetUsageForServicePointRequest generates requests for GetUsageForServicePoint

func NewListAccountsRequest

func NewListAccountsRequest(server string, params *ListAccountsParams) (*http.Request, error)

NewListAccountsRequest generates requests for ListAccounts

func NewListBalancesBulkRequest

func NewListBalancesBulkRequest(server string, params *ListBalancesBulkParams) (*http.Request, error)

NewListBalancesBulkRequest generates requests for ListBalancesBulk

func NewListBalancesForAccountsRequest

func NewListBalancesForAccountsRequest(server string, params *ListBalancesForAccountsParams, body ListBalancesForAccountsJSONRequestBody) (*http.Request, error)

NewListBalancesForAccountsRequest calls the generic ListBalancesForAccounts builder with application/json body

func NewListBalancesForAccountsRequestWithBody

func NewListBalancesForAccountsRequestWithBody(server string, params *ListBalancesForAccountsParams, contentType string, body io.Reader) (*http.Request, error)

NewListBalancesForAccountsRequestWithBody generates requests for ListBalancesForAccounts with any type of body

func NewListBillingBulkRequest

func NewListBillingBulkRequest(server string, params *ListBillingBulkParams) (*http.Request, error)

NewListBillingBulkRequest generates requests for ListBillingBulk

func NewListBillingForAccountsRequest

func NewListBillingForAccountsRequest(server string, params *ListBillingForAccountsParams, body ListBillingForAccountsJSONRequestBody) (*http.Request, error)

NewListBillingForAccountsRequest calls the generic ListBillingForAccounts builder with application/json body

func NewListBillingForAccountsRequestWithBody

func NewListBillingForAccountsRequestWithBody(server string, params *ListBillingForAccountsParams, contentType string, body io.Reader) (*http.Request, error)

NewListBillingForAccountsRequestWithBody generates requests for ListBillingForAccounts with any type of body

func NewListDERBulkRequest

func NewListDERBulkRequest(server string, params *ListDERBulkParams) (*http.Request, error)

NewListDERBulkRequest generates requests for ListDERBulk

func NewListDERForServicePointsRequest

func NewListDERForServicePointsRequest(server string, params *ListDERForServicePointsParams, body ListDERForServicePointsJSONRequestBody) (*http.Request, error)

NewListDERForServicePointsRequest calls the generic ListDERForServicePoints builder with application/json body

func NewListDERForServicePointsRequestWithBody

func NewListDERForServicePointsRequestWithBody(server string, params *ListDERForServicePointsParams, contentType string, body io.Reader) (*http.Request, error)

NewListDERForServicePointsRequestWithBody generates requests for ListDERForServicePoints with any type of body

func NewListInvoicesBulkRequest

func NewListInvoicesBulkRequest(server string, params *ListInvoicesBulkParams) (*http.Request, error)

NewListInvoicesBulkRequest generates requests for ListInvoicesBulk

func NewListInvoicesForAccountsRequest

func NewListInvoicesForAccountsRequest(server string, params *ListInvoicesForAccountsParams, body ListInvoicesForAccountsJSONRequestBody) (*http.Request, error)

NewListInvoicesForAccountsRequest calls the generic ListInvoicesForAccounts builder with application/json body

func NewListInvoicesForAccountsRequestWithBody

func NewListInvoicesForAccountsRequestWithBody(server string, params *ListInvoicesForAccountsParams, contentType string, body io.Reader) (*http.Request, error)

NewListInvoicesForAccountsRequestWithBody generates requests for ListInvoicesForAccounts with any type of body

func NewListPlansRequest

func NewListPlansRequest(server string, params *ListPlansParams) (*http.Request, error)

NewListPlansRequest generates requests for ListPlans

func NewListServicePointsRequest

func NewListServicePointsRequest(server string, params *ListServicePointsParams) (*http.Request, error)

NewListServicePointsRequest generates requests for ListServicePoints

func NewListUsageBulkRequest

func NewListUsageBulkRequest(server string, params *ListUsageBulkParams) (*http.Request, error)

NewListUsageBulkRequest generates requests for ListUsageBulk

func NewListUsageForServicePointsRequest

func NewListUsageForServicePointsRequest(server string, params *ListUsageForServicePointsParams, body ListUsageForServicePointsJSONRequestBody) (*http.Request, error)

NewListUsageForServicePointsRequest calls the generic ListUsageForServicePoints builder with application/json body

func NewListUsageForServicePointsRequestWithBody

func NewListUsageForServicePointsRequestWithBody(server string, params *ListUsageForServicePointsParams, contentType string, body io.Reader) (*http.Request, error)

NewListUsageForServicePointsRequestWithBody generates requests for ListUsageForServicePoints with any type of body

Types

type AccountConcessionsDetail

type AccountConcessionsDetail = EnergyConcessionsResponse

AccountConcessionsDetail defines model for accountConcessionsDetail.

type AccountDetailV2

type AccountDetailV2 = EnergyAccountDetailResponseV2

AccountDetailV2 defines model for accountDetailV2.

type AccountId

type AccountId = string

AccountId defines model for accountId.

type AccountIdList

type AccountIdList struct {
	Data struct {
		// Array of specific accountIds to obtain data for
		AccountIds []string `json:"accountIds"`
	} `json:"data"`
	Meta Meta `json:"meta"`
}

AccountIdList defines model for accountIdList.

type AccountListV2

type AccountListV2 = EnergyAccountListResponseV2

AccountListV2 defines model for accountListV2.

type AccountPaymentScheduleDetail

type AccountPaymentScheduleDetail = EnergyPaymentScheduleResponse

AccountPaymentScheduleDetail defines model for accountPaymentScheduleDetail.

type BalanceDetail

type BalanceDetail = EnergyBalanceResponse

BalanceDetail defines model for balanceDetail.

type BalanceList

type BalanceList = EnergyBalanceListResponse

BalanceList defines model for balanceList.

type BillingList

type BillingList = EnergyBillingListResponse

BillingList defines model for billingList.

type Client

type Client struct {
	// The endpoint of the server conforming to this interface, with scheme,
	// https://api.deepmap.com for example. This can contain a path relative
	// to the server, such as https://api.deepmap.com/dev-test, and all the
	// paths in the swagger spec will be appended to the server.
	Server string

	// Doer for performing requests, typically a *http.Client with any
	// customized settings, such as certificate chains.
	Client HttpRequestDoer

	// A list of callbacks for modifying requests which are generated before sending over
	// the network.
	RequestEditors []RequestEditorFn
}

Client which conforms to the OpenAPI3 specification for this service.

func NewClient

func NewClient(server string, opts ...ClientOption) (*Client, error)

Creates a new Client, with reasonable defaults

func (*Client) GetAccount

func (c *Client) GetAccount(ctx context.Context, accountId AccountId, params *GetAccountParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetBalanceForAccount

func (c *Client) GetBalanceForAccount(ctx context.Context, accountId AccountId, params *GetBalanceForAccountParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetBillingForAccount

func (c *Client) GetBillingForAccount(ctx context.Context, accountId AccountId, params *GetBillingForAccountParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetConcessions

func (c *Client) GetConcessions(ctx context.Context, accountId AccountId, params *GetConcessionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetDERForServicePoint

func (c *Client) GetDERForServicePoint(ctx context.Context, servicePointId ServicePointId, params *GetDERForServicePointParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetInvoicesForAccount

func (c *Client) GetInvoicesForAccount(ctx context.Context, accountId AccountId, params *GetInvoicesForAccountParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetPaymentSchedule

func (c *Client) GetPaymentSchedule(ctx context.Context, accountId AccountId, params *GetPaymentScheduleParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetPlan

func (c *Client) GetPlan(ctx context.Context, planId string, params *GetPlanParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetServicePoint

func (c *Client) GetServicePoint(ctx context.Context, servicePointId ServicePointId, params *GetServicePointParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetUsageForServicePoint

func (c *Client) GetUsageForServicePoint(ctx context.Context, servicePointId ServicePointId, params *GetUsageForServicePointParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListAccounts

func (c *Client) ListAccounts(ctx context.Context, params *ListAccountsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListBalancesBulk

func (c *Client) ListBalancesBulk(ctx context.Context, params *ListBalancesBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListBalancesForAccounts

func (c *Client) ListBalancesForAccounts(ctx context.Context, params *ListBalancesForAccountsParams, body ListBalancesForAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListBalancesForAccountsWithBody

func (c *Client) ListBalancesForAccountsWithBody(ctx context.Context, params *ListBalancesForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListBillingBulk

func (c *Client) ListBillingBulk(ctx context.Context, params *ListBillingBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListBillingForAccounts

func (c *Client) ListBillingForAccounts(ctx context.Context, params *ListBillingForAccountsParams, body ListBillingForAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListBillingForAccountsWithBody

func (c *Client) ListBillingForAccountsWithBody(ctx context.Context, params *ListBillingForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListDERBulk

func (c *Client) ListDERBulk(ctx context.Context, params *ListDERBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListDERForServicePoints

func (c *Client) ListDERForServicePoints(ctx context.Context, params *ListDERForServicePointsParams, body ListDERForServicePointsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListDERForServicePointsWithBody

func (c *Client) ListDERForServicePointsWithBody(ctx context.Context, params *ListDERForServicePointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListInvoicesBulk

func (c *Client) ListInvoicesBulk(ctx context.Context, params *ListInvoicesBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListInvoicesForAccounts

func (c *Client) ListInvoicesForAccounts(ctx context.Context, params *ListInvoicesForAccountsParams, body ListInvoicesForAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListInvoicesForAccountsWithBody

func (c *Client) ListInvoicesForAccountsWithBody(ctx context.Context, params *ListInvoicesForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListPlans

func (c *Client) ListPlans(ctx context.Context, params *ListPlansParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListServicePoints

func (c *Client) ListServicePoints(ctx context.Context, params *ListServicePointsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListUsageBulk

func (c *Client) ListUsageBulk(ctx context.Context, params *ListUsageBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListUsageForServicePoints

func (c *Client) ListUsageForServicePoints(ctx context.Context, params *ListUsageForServicePointsParams, body ListUsageForServicePointsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListUsageForServicePointsWithBody

func (c *Client) ListUsageForServicePointsWithBody(ctx context.Context, params *ListUsageForServicePointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

type ClientInterface

type ClientInterface interface {
	// ListAccounts request
	ListAccounts(ctx context.Context, params *ListAccountsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListBalancesBulk request
	ListBalancesBulk(ctx context.Context, params *ListBalancesBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListBalancesForAccounts request with any body
	ListBalancesForAccountsWithBody(ctx context.Context, params *ListBalancesForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	ListBalancesForAccounts(ctx context.Context, params *ListBalancesForAccountsParams, body ListBalancesForAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListBillingBulk request
	ListBillingBulk(ctx context.Context, params *ListBillingBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListBillingForAccounts request with any body
	ListBillingForAccountsWithBody(ctx context.Context, params *ListBillingForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	ListBillingForAccounts(ctx context.Context, params *ListBillingForAccountsParams, body ListBillingForAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListInvoicesBulk request
	ListInvoicesBulk(ctx context.Context, params *ListInvoicesBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListInvoicesForAccounts request with any body
	ListInvoicesForAccountsWithBody(ctx context.Context, params *ListInvoicesForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	ListInvoicesForAccounts(ctx context.Context, params *ListInvoicesForAccountsParams, body ListInvoicesForAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetAccount request
	GetAccount(ctx context.Context, accountId AccountId, params *GetAccountParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetBalanceForAccount request
	GetBalanceForAccount(ctx context.Context, accountId AccountId, params *GetBalanceForAccountParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetBillingForAccount request
	GetBillingForAccount(ctx context.Context, accountId AccountId, params *GetBillingForAccountParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetConcessions request
	GetConcessions(ctx context.Context, accountId AccountId, params *GetConcessionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetInvoicesForAccount request
	GetInvoicesForAccount(ctx context.Context, accountId AccountId, params *GetInvoicesForAccountParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetPaymentSchedule request
	GetPaymentSchedule(ctx context.Context, accountId AccountId, params *GetPaymentScheduleParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListServicePoints request
	ListServicePoints(ctx context.Context, params *ListServicePointsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListDERBulk request
	ListDERBulk(ctx context.Context, params *ListDERBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListDERForServicePoints request with any body
	ListDERForServicePointsWithBody(ctx context.Context, params *ListDERForServicePointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	ListDERForServicePoints(ctx context.Context, params *ListDERForServicePointsParams, body ListDERForServicePointsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListUsageBulk request
	ListUsageBulk(ctx context.Context, params *ListUsageBulkParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListUsageForServicePoints request with any body
	ListUsageForServicePointsWithBody(ctx context.Context, params *ListUsageForServicePointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	ListUsageForServicePoints(ctx context.Context, params *ListUsageForServicePointsParams, body ListUsageForServicePointsJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetServicePoint request
	GetServicePoint(ctx context.Context, servicePointId ServicePointId, params *GetServicePointParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetDERForServicePoint request
	GetDERForServicePoint(ctx context.Context, servicePointId ServicePointId, params *GetDERForServicePointParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetUsageForServicePoint request
	GetUsageForServicePoint(ctx context.Context, servicePointId ServicePointId, params *GetUsageForServicePointParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListPlans request
	ListPlans(ctx context.Context, params *ListPlansParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetPlan request
	GetPlan(ctx context.Context, planId string, params *GetPlanParams, reqEditors ...RequestEditorFn) (*http.Response, error)
}

The interface specification for the client above.

type ClientOption

type ClientOption func(*Client) error

ClientOption allows setting custom parameters during construction

func WithBaseURL

func WithBaseURL(baseURL string) ClientOption

WithBaseURL overrides the baseURL.

func WithHTTPClient

func WithHTTPClient(doer HttpRequestDoer) ClientOption

WithHTTPClient allows overriding the default Doer, which is automatically created using http.Client. This is useful for tests.

func WithRequestEditorFn

func WithRequestEditorFn(fn RequestEditorFn) ClientOption

WithRequestEditorFn allows setting up a callback function, which will be called right before sending the request. This can be used to mutate the request.

type ClientWithResponses

type ClientWithResponses struct {
	ClientInterface
}

ClientWithResponses builds on ClientInterface to offer response payloads

func NewClientWithResponses

func NewClientWithResponses(server string, opts ...ClientOption) (*ClientWithResponses, error)

NewClientWithResponses creates a new ClientWithResponses, which wraps Client with return type handling

func (*ClientWithResponses) GetAccountWithResponse

func (c *ClientWithResponses) GetAccountWithResponse(ctx context.Context, accountId AccountId, params *GetAccountParams, reqEditors ...RequestEditorFn) (*GetAccountResponse, error)

GetAccountWithResponse request returning *GetAccountResponse

func (*ClientWithResponses) GetBalanceForAccountWithResponse

func (c *ClientWithResponses) GetBalanceForAccountWithResponse(ctx context.Context, accountId AccountId, params *GetBalanceForAccountParams, reqEditors ...RequestEditorFn) (*GetBalanceForAccountResponse, error)

GetBalanceForAccountWithResponse request returning *GetBalanceForAccountResponse

func (*ClientWithResponses) GetBillingForAccountWithResponse

func (c *ClientWithResponses) GetBillingForAccountWithResponse(ctx context.Context, accountId AccountId, params *GetBillingForAccountParams, reqEditors ...RequestEditorFn) (*GetBillingForAccountResponse, error)

GetBillingForAccountWithResponse request returning *GetBillingForAccountResponse

func (*ClientWithResponses) GetConcessionsWithResponse

func (c *ClientWithResponses) GetConcessionsWithResponse(ctx context.Context, accountId AccountId, params *GetConcessionsParams, reqEditors ...RequestEditorFn) (*GetConcessionsResponse, error)

GetConcessionsWithResponse request returning *GetConcessionsResponse

func (*ClientWithResponses) GetDERForServicePointWithResponse

func (c *ClientWithResponses) GetDERForServicePointWithResponse(ctx context.Context, servicePointId ServicePointId, params *GetDERForServicePointParams, reqEditors ...RequestEditorFn) (*GetDERForServicePointResponse, error)

GetDERForServicePointWithResponse request returning *GetDERForServicePointResponse

func (*ClientWithResponses) GetInvoicesForAccountWithResponse

func (c *ClientWithResponses) GetInvoicesForAccountWithResponse(ctx context.Context, accountId AccountId, params *GetInvoicesForAccountParams, reqEditors ...RequestEditorFn) (*GetInvoicesForAccountResponse, error)

GetInvoicesForAccountWithResponse request returning *GetInvoicesForAccountResponse

func (*ClientWithResponses) GetPaymentScheduleWithResponse

func (c *ClientWithResponses) GetPaymentScheduleWithResponse(ctx context.Context, accountId AccountId, params *GetPaymentScheduleParams, reqEditors ...RequestEditorFn) (*GetPaymentScheduleResponse, error)

GetPaymentScheduleWithResponse request returning *GetPaymentScheduleResponse

func (*ClientWithResponses) GetPlanWithResponse

func (c *ClientWithResponses) GetPlanWithResponse(ctx context.Context, planId string, params *GetPlanParams, reqEditors ...RequestEditorFn) (*GetPlanResponse, error)

GetPlanWithResponse request returning *GetPlanResponse

func (*ClientWithResponses) GetServicePointWithResponse

func (c *ClientWithResponses) GetServicePointWithResponse(ctx context.Context, servicePointId ServicePointId, params *GetServicePointParams, reqEditors ...RequestEditorFn) (*GetServicePointResponse, error)

GetServicePointWithResponse request returning *GetServicePointResponse

func (*ClientWithResponses) GetUsageForServicePointWithResponse

func (c *ClientWithResponses) GetUsageForServicePointWithResponse(ctx context.Context, servicePointId ServicePointId, params *GetUsageForServicePointParams, reqEditors ...RequestEditorFn) (*GetUsageForServicePointResponse, error)

GetUsageForServicePointWithResponse request returning *GetUsageForServicePointResponse

func (*ClientWithResponses) ListAccountsWithResponse

func (c *ClientWithResponses) ListAccountsWithResponse(ctx context.Context, params *ListAccountsParams, reqEditors ...RequestEditorFn) (*ListAccountsResponse, error)

ListAccountsWithResponse request returning *ListAccountsResponse

func (*ClientWithResponses) ListBalancesBulkWithResponse

func (c *ClientWithResponses) ListBalancesBulkWithResponse(ctx context.Context, params *ListBalancesBulkParams, reqEditors ...RequestEditorFn) (*ListBalancesBulkResponse, error)

ListBalancesBulkWithResponse request returning *ListBalancesBulkResponse

func (*ClientWithResponses) ListBalancesForAccountsWithBodyWithResponse

func (c *ClientWithResponses) ListBalancesForAccountsWithBodyWithResponse(ctx context.Context, params *ListBalancesForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListBalancesForAccountsResponse, error)

ListBalancesForAccountsWithBodyWithResponse request with arbitrary body returning *ListBalancesForAccountsResponse

func (*ClientWithResponses) ListBillingBulkWithResponse

func (c *ClientWithResponses) ListBillingBulkWithResponse(ctx context.Context, params *ListBillingBulkParams, reqEditors ...RequestEditorFn) (*ListBillingBulkResponse, error)

ListBillingBulkWithResponse request returning *ListBillingBulkResponse

func (*ClientWithResponses) ListBillingForAccountsWithBodyWithResponse

func (c *ClientWithResponses) ListBillingForAccountsWithBodyWithResponse(ctx context.Context, params *ListBillingForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListBillingForAccountsResponse, error)

ListBillingForAccountsWithBodyWithResponse request with arbitrary body returning *ListBillingForAccountsResponse

func (*ClientWithResponses) ListBillingForAccountsWithResponse

func (*ClientWithResponses) ListDERBulkWithResponse

func (c *ClientWithResponses) ListDERBulkWithResponse(ctx context.Context, params *ListDERBulkParams, reqEditors ...RequestEditorFn) (*ListDERBulkResponse, error)

ListDERBulkWithResponse request returning *ListDERBulkResponse

func (*ClientWithResponses) ListDERForServicePointsWithBodyWithResponse

func (c *ClientWithResponses) ListDERForServicePointsWithBodyWithResponse(ctx context.Context, params *ListDERForServicePointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListDERForServicePointsResponse, error)

ListDERForServicePointsWithBodyWithResponse request with arbitrary body returning *ListDERForServicePointsResponse

func (*ClientWithResponses) ListInvoicesBulkWithResponse

func (c *ClientWithResponses) ListInvoicesBulkWithResponse(ctx context.Context, params *ListInvoicesBulkParams, reqEditors ...RequestEditorFn) (*ListInvoicesBulkResponse, error)

ListInvoicesBulkWithResponse request returning *ListInvoicesBulkResponse

func (*ClientWithResponses) ListInvoicesForAccountsWithBodyWithResponse

func (c *ClientWithResponses) ListInvoicesForAccountsWithBodyWithResponse(ctx context.Context, params *ListInvoicesForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListInvoicesForAccountsResponse, error)

ListInvoicesForAccountsWithBodyWithResponse request with arbitrary body returning *ListInvoicesForAccountsResponse

func (*ClientWithResponses) ListPlansWithResponse

func (c *ClientWithResponses) ListPlansWithResponse(ctx context.Context, params *ListPlansParams, reqEditors ...RequestEditorFn) (*ListPlansResponse, error)

ListPlansWithResponse request returning *ListPlansResponse

func (*ClientWithResponses) ListServicePointsWithResponse

func (c *ClientWithResponses) ListServicePointsWithResponse(ctx context.Context, params *ListServicePointsParams, reqEditors ...RequestEditorFn) (*ListServicePointsResponse, error)

ListServicePointsWithResponse request returning *ListServicePointsResponse

func (*ClientWithResponses) ListUsageBulkWithResponse

func (c *ClientWithResponses) ListUsageBulkWithResponse(ctx context.Context, params *ListUsageBulkParams, reqEditors ...RequestEditorFn) (*ListUsageBulkResponse, error)

ListUsageBulkWithResponse request returning *ListUsageBulkResponse

func (*ClientWithResponses) ListUsageForServicePointsWithBodyWithResponse

func (c *ClientWithResponses) ListUsageForServicePointsWithBodyWithResponse(ctx context.Context, params *ListUsageForServicePointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListUsageForServicePointsResponse, error)

ListUsageForServicePointsWithBodyWithResponse request with arbitrary body returning *ListUsageForServicePointsResponse

type ClientWithResponsesInterface

type ClientWithResponsesInterface interface {
	// ListAccounts request
	ListAccountsWithResponse(ctx context.Context, params *ListAccountsParams, reqEditors ...RequestEditorFn) (*ListAccountsResponse, error)

	// ListBalancesBulk request
	ListBalancesBulkWithResponse(ctx context.Context, params *ListBalancesBulkParams, reqEditors ...RequestEditorFn) (*ListBalancesBulkResponse, error)

	// ListBalancesForAccounts request with any body
	ListBalancesForAccountsWithBodyWithResponse(ctx context.Context, params *ListBalancesForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListBalancesForAccountsResponse, error)

	ListBalancesForAccountsWithResponse(ctx context.Context, params *ListBalancesForAccountsParams, body ListBalancesForAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*ListBalancesForAccountsResponse, error)

	// ListBillingBulk request
	ListBillingBulkWithResponse(ctx context.Context, params *ListBillingBulkParams, reqEditors ...RequestEditorFn) (*ListBillingBulkResponse, error)

	// ListBillingForAccounts request with any body
	ListBillingForAccountsWithBodyWithResponse(ctx context.Context, params *ListBillingForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListBillingForAccountsResponse, error)

	ListBillingForAccountsWithResponse(ctx context.Context, params *ListBillingForAccountsParams, body ListBillingForAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*ListBillingForAccountsResponse, error)

	// ListInvoicesBulk request
	ListInvoicesBulkWithResponse(ctx context.Context, params *ListInvoicesBulkParams, reqEditors ...RequestEditorFn) (*ListInvoicesBulkResponse, error)

	// ListInvoicesForAccounts request with any body
	ListInvoicesForAccountsWithBodyWithResponse(ctx context.Context, params *ListInvoicesForAccountsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListInvoicesForAccountsResponse, error)

	ListInvoicesForAccountsWithResponse(ctx context.Context, params *ListInvoicesForAccountsParams, body ListInvoicesForAccountsJSONRequestBody, reqEditors ...RequestEditorFn) (*ListInvoicesForAccountsResponse, error)

	// GetAccount request
	GetAccountWithResponse(ctx context.Context, accountId AccountId, params *GetAccountParams, reqEditors ...RequestEditorFn) (*GetAccountResponse, error)

	// GetBalanceForAccount request
	GetBalanceForAccountWithResponse(ctx context.Context, accountId AccountId, params *GetBalanceForAccountParams, reqEditors ...RequestEditorFn) (*GetBalanceForAccountResponse, error)

	// GetBillingForAccount request
	GetBillingForAccountWithResponse(ctx context.Context, accountId AccountId, params *GetBillingForAccountParams, reqEditors ...RequestEditorFn) (*GetBillingForAccountResponse, error)

	// GetConcessions request
	GetConcessionsWithResponse(ctx context.Context, accountId AccountId, params *GetConcessionsParams, reqEditors ...RequestEditorFn) (*GetConcessionsResponse, error)

	// GetInvoicesForAccount request
	GetInvoicesForAccountWithResponse(ctx context.Context, accountId AccountId, params *GetInvoicesForAccountParams, reqEditors ...RequestEditorFn) (*GetInvoicesForAccountResponse, error)

	// GetPaymentSchedule request
	GetPaymentScheduleWithResponse(ctx context.Context, accountId AccountId, params *GetPaymentScheduleParams, reqEditors ...RequestEditorFn) (*GetPaymentScheduleResponse, error)

	// ListServicePoints request
	ListServicePointsWithResponse(ctx context.Context, params *ListServicePointsParams, reqEditors ...RequestEditorFn) (*ListServicePointsResponse, error)

	// ListDERBulk request
	ListDERBulkWithResponse(ctx context.Context, params *ListDERBulkParams, reqEditors ...RequestEditorFn) (*ListDERBulkResponse, error)

	// ListDERForServicePoints request with any body
	ListDERForServicePointsWithBodyWithResponse(ctx context.Context, params *ListDERForServicePointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListDERForServicePointsResponse, error)

	ListDERForServicePointsWithResponse(ctx context.Context, params *ListDERForServicePointsParams, body ListDERForServicePointsJSONRequestBody, reqEditors ...RequestEditorFn) (*ListDERForServicePointsResponse, error)

	// ListUsageBulk request
	ListUsageBulkWithResponse(ctx context.Context, params *ListUsageBulkParams, reqEditors ...RequestEditorFn) (*ListUsageBulkResponse, error)

	// ListUsageForServicePoints request with any body
	ListUsageForServicePointsWithBodyWithResponse(ctx context.Context, params *ListUsageForServicePointsParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ListUsageForServicePointsResponse, error)

	ListUsageForServicePointsWithResponse(ctx context.Context, params *ListUsageForServicePointsParams, body ListUsageForServicePointsJSONRequestBody, reqEditors ...RequestEditorFn) (*ListUsageForServicePointsResponse, error)

	// GetServicePoint request
	GetServicePointWithResponse(ctx context.Context, servicePointId ServicePointId, params *GetServicePointParams, reqEditors ...RequestEditorFn) (*GetServicePointResponse, error)

	// GetDERForServicePoint request
	GetDERForServicePointWithResponse(ctx context.Context, servicePointId ServicePointId, params *GetDERForServicePointParams, reqEditors ...RequestEditorFn) (*GetDERForServicePointResponse, error)

	// GetUsageForServicePoint request
	GetUsageForServicePointWithResponse(ctx context.Context, servicePointId ServicePointId, params *GetUsageForServicePointParams, reqEditors ...RequestEditorFn) (*GetUsageForServicePointResponse, error)

	// ListPlans request
	ListPlansWithResponse(ctx context.Context, params *ListPlansParams, reqEditors ...RequestEditorFn) (*ListPlansResponse, error)

	// GetPlan request
	GetPlanWithResponse(ctx context.Context, planId string, params *GetPlanParams, reqEditors ...RequestEditorFn) (*GetPlanResponse, error)
}

ClientWithResponsesInterface is the interface specification for the client with responses above.

type CommonPAFAddress

type CommonPAFAddress struct {
	// Building/Property name 1
	BuildingName1 *string `json:"buildingName1,omitempty"`

	// Building/Property name 2
	BuildingName2 *string `json:"buildingName2,omitempty"`

	// Unique identifier for an address as defined by Australia Post.  Also known as Delivery Point Identifier
	Dpid *string `json:"dpid,omitempty"`

	// Unit number (including suffix, if applicable)
	FlatUnitNumber *string `json:"flatUnitNumber,omitempty"`

	// Type of flat or unit for the address
	FlatUnitType *string `json:"flatUnitType,omitempty"`

	// Floor or level number (including alpha characters)
	FloorLevelNumber *string `json:"floorLevelNumber,omitempty"`

	// Type of floor or level for the address
	FloorLevelType *string `json:"floorLevelType,omitempty"`

	// Full name of locality
	LocalityName string `json:"localityName"`

	// Allotment number for the address
	LotNumber *string `json:"lotNumber,omitempty"`

	// Postal delivery number if the address is a postal delivery type
	PostalDeliveryNumber *int `json:"postalDeliveryNumber,omitempty"`

	// Postal delivery number prefix related to the postal delivery number
	PostalDeliveryNumberPrefix *string `json:"postalDeliveryNumberPrefix,omitempty"`

	// Postal delivery number suffix related to the postal delivery number
	PostalDeliveryNumberSuffix *string `json:"postalDeliveryNumberSuffix,omitempty"`

	// Postal delivery type. (eg. PO BOX). Valid enumeration defined by Australia Post PAF code file
	PostalDeliveryType *string `json:"postalDeliveryType,omitempty"`

	// Postcode for the locality
	Postcode string `json:"postcode"`

	// State in which the address belongs. Valid enumeration defined by Australia Post PAF code file [State Type Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf). NSW, QLD, VIC, NT, WA, SA, TAS, ACT, AAT
	State string `json:"state"`

	// The name of the street
	StreetName *string `json:"streetName,omitempty"`

	// The street type suffix. Valid enumeration defined by Australia Post PAF code file
	StreetSuffix *string `json:"streetSuffix,omitempty"`

	// The street type. Valid enumeration defined by Australia Post PAF code file
	StreetType *string `json:"streetType,omitempty"`

	// Thoroughfare number for a property (first number in a property ranged address)
	ThoroughfareNumber1 *int `json:"thoroughfareNumber1,omitempty"`

	// Suffix for the thoroughfare number. Only relevant is thoroughfareNumber1 is populated
	ThoroughfareNumber1Suffix *string `json:"thoroughfareNumber1Suffix,omitempty"`

	// Second thoroughfare number (only used if the property has a ranged address eg 23-25)
	ThoroughfareNumber2 *int `json:"thoroughfareNumber2,omitempty"`

	// Suffix for the second thoroughfare number. Only relevant is thoroughfareNumber2 is populated
	ThoroughfareNumber2Suffix *string `json:"thoroughfareNumber2Suffix,omitempty"`
}

Australian address formatted according to the file format defined by the [PAF file format](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf). Required if addressUType is set to paf

type CommonPhysicalAddress

type CommonPhysicalAddress struct {
	// The type of address object present
	AddressUType CommonPhysicalAddressAddressUType `json:"addressUType"`

	// Australian address formatted according to the file format defined by the [PAF file format](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf). Required if addressUType is set to paf
	Paf *CommonPAFAddress `json:"paf,omitempty"`

	// Required if addressUType is set to simple
	Simple *CommonSimpleAddress `json:"simple,omitempty"`
}

CommonPhysicalAddress defines model for CommonPhysicalAddress.

type CommonPhysicalAddressAddressUType

type CommonPhysicalAddressAddressUType string

The type of address object present

Defines values for CommonPhysicalAddressAddressUType.

type CommonSimpleAddress

type CommonSimpleAddress struct {
	// First line of the standard address object
	AddressLine1 string `json:"addressLine1"`

	// Second line of the standard address object
	AddressLine2 *string `json:"addressLine2,omitempty"`

	// Third line of the standard address object
	AddressLine3 *string `json:"addressLine3,omitempty"`

	// Name of the city or locality
	City string `json:"city"`

	// A valid [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country code. Australia (AUS) is assumed if country is not present.
	Country *string `json:"country,omitempty"`

	// Name of the individual or business formatted for inclusion in an address used for physical mail
	MailingName *string `json:"mailingName,omitempty"`

	// Mandatory for Australian addresses
	Postcode *string `json:"postcode,omitempty"`

	// Free text if the country is not Australia. If country is Australia then must be one of the values defined by the [State Type Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf) in the PAF file format. NSW, QLD, VIC, NT, WA, SA, TAS, ACT, AAT
	State string `json:"state"`
}

Required if addressUType is set to simple

type DerDetail

type DerDetail = EnergyDerDetailResponse

DerDetail defines model for derDetail.

type DerList

type DerList = EnergyDerListResponse

DerList defines model for derList.

type EnergyAccountBaseV2

type EnergyAccountBaseV2 struct {
	// The ID of the account.  To be created in accordance with CDR ID permanence requirements
	AccountId string `json:"accountId"`

	// Optional identifier of the account as defined by the data holder.  This must be the value presented on physical statements (if it exists) and must not be used for the value of accountId
	AccountNumber *string `json:"accountNumber,omitempty"`

	// The date that the account was created or opened. Mandatory if openStatus is OPEN
	CreationDate *string `json:"creationDate,omitempty"`

	// An optional display name for the account if one exists or can be derived.  The content of this field is at the discretion of the data holder
	DisplayName *string `json:"displayName,omitempty"`

	// Open or closed status for the account. If not present then OPEN is assumed
	OpenStatus *EnergyAccountBaseV2OpenStatus `json:"openStatus,omitempty"`
}

EnergyAccountBaseV2 defines model for EnergyAccountBaseV2.

type EnergyAccountBaseV2OpenStatus

type EnergyAccountBaseV2OpenStatus string

Open or closed status for the account. If not present then OPEN is assumed

const (
	EnergyAccountBaseV2OpenStatusCLOSED EnergyAccountBaseV2OpenStatus = "CLOSED"
	EnergyAccountBaseV2OpenStatusOPEN   EnergyAccountBaseV2OpenStatus = "OPEN"
)

Defines values for EnergyAccountBaseV2OpenStatus.

type EnergyAccountDetailResponseV2

type EnergyAccountDetailResponseV2 struct {
	Data  EnergyAccountDetailV2 `json:"data"`
	Links Links                 `json:"links"`
	Meta  Meta                  `json:"meta"`
}

EnergyAccountDetailResponseV2 defines model for EnergyAccountDetailResponseV2.

type EnergyAccountDetailV2

type EnergyAccountDetailV2 struct {
	// The ID of the account.  To be created in accordance with CDR ID permanence requirements
	AccountId string `json:"accountId"`

	// Optional identifier of the account as defined by the data holder.  This must be the value presented on physical statements (if it exists) and must not be used for the value of accountId
	AccountNumber *string `json:"accountNumber,omitempty"`

	// The date that the account was created or opened. Mandatory if openStatus is OPEN
	CreationDate *string `json:"creationDate,omitempty"`

	// An optional display name for the account if one exists or can be derived.  The content of this field is at the discretion of the data holder
	DisplayName *string `json:"displayName,omitempty"`

	// Open or closed status for the account. If not present then OPEN is assumed
	OpenStatus *EnergyAccountDetailV2OpenStatus `json:"openStatus,omitempty"`

	// The array of plans containing service points and associated plan details
	Plans []struct {
		// An array of additional contacts that are authorised to act on this account
		AuthorisedContacts *[]struct {
			// For people with single names this field need not be present. The single name should be in the lastName field
			FirstName *string `json:"firstName,omitempty"`
			EnergyAdjustments
			// For people with single names the single name should be in this field
			LastName string `json:"lastName"`

			// Field is mandatory but array may be empty
			MiddleNames *[]string `json:"middleNames,omitempty"`

			// Also known as title or salutation. The prefix to the name (e.g. Mr, Mrs, Ms, Miss, Sir, etc)
			Prefix *string `json:"prefix,omitempty"`

			// Used for a trailing suffix to the name (e.g. Jr)
			Suffix *string `json:"suffix,omitempty"`
		} `json:"authorisedContacts,omitempty"`

		// Optional display name for the plan provided by the customer to help differentiate multiple plans
		Nickname *string `json:"nickname,omitempty"`

		// Detail on the plan applicable to this account. Mandatory if openStatus is OPEN
		PlanDetail *struct {
			ElectricityContract *EnergyPlanContract `json:"electricityContract,omitempty"`

			// The fuel types covered by the plan
			FuelType    EnergyAccountDetailV2PlansPlanDetailFuelType `json:"fuelType"`
			GasContract *EnergyPlanContract                          `json:"gasContract,omitempty"`

			// Flag that indicates that the plan is contingent on the customer taking up an alternate fuel plan from the same retailer (for instance, if the fuelType is ELECTRICITY then a GAS plan from the same retailer must be taken up). Has no meaning if the plan has a fuelType of DUAL. If absent the value is assumed to be false
			IsContingentPlan *bool `json:"isContingentPlan,omitempty"`

			// Charges for metering included in the plan
			MeteringCharges *[]struct {
				// Description of the charge
				Description *string `json:"description,omitempty"`

				// Display name of the charge
				DisplayName string `json:"displayName"`

				// The upper limit of the charge if the charge could occur in a range
				MaximumValue *string `json:"maximumValue,omitempty"`

				// Minimum value of the charge if the charge is a range or the absolute value of the charge if no range is specified
				MinimumValue string `json:"minimumValue"`

				// The charges that occur on a schedule indicates the frequency. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
				Period *string `json:"period,omitempty"`
			} `json:"meteringCharges,omitempty"`
		} `json:"planDetail,omitempty"`

		// Mandatory if openStatus is OPEN
		PlanOverview *struct {
			// The name of the plan if one exists
			DisplayName *string `json:"displayName,omitempty"`

			// The end date of the applicability of this plan
			EndDate *string `json:"endDate,omitempty"`

			// The start date of the applicability of this plan
			StartDate string `json:"startDate"`
		} `json:"planOverview,omitempty"`

		// An array of servicePointIds, representing NMIs, that this account is linked to
		ServicePointIds []string `json:"servicePointIds"`
	} `json:"plans"`
}

EnergyAccountDetailV2 defines model for EnergyAccountDetailV2.

type EnergyAccountDetailV2OpenStatus

type EnergyAccountDetailV2OpenStatus string

Open or closed status for the account. If not present then OPEN is assumed

const (
	EnergyAccountDetailV2OpenStatusCLOSED EnergyAccountDetailV2OpenStatus = "CLOSED"
	EnergyAccountDetailV2OpenStatusOPEN   EnergyAccountDetailV2OpenStatus = "OPEN"
)

Defines values for EnergyAccountDetailV2OpenStatus.

type EnergyAccountDetailV2PlansPlanDetailFuelType

type EnergyAccountDetailV2PlansPlanDetailFuelType string

The fuel types covered by the plan

const (
	EnergyAccountDetailV2PlansPlanDetailFuelTypeDUAL        EnergyAccountDetailV2PlansPlanDetailFuelType = "DUAL"
	EnergyAccountDetailV2PlansPlanDetailFuelTypeELECTRICITY EnergyAccountDetailV2PlansPlanDetailFuelType = "ELECTRICITY"
	EnergyAccountDetailV2PlansPlanDetailFuelTypeGAS         EnergyAccountDetailV2PlansPlanDetailFuelType = "GAS"
)

Defines values for EnergyAccountDetailV2PlansPlanDetailFuelType.

type EnergyAccountListResponseV2

type EnergyAccountListResponseV2 struct {
	Data struct {
		// Array of accounts
		Accounts []EnergyAccountV2 `json:"accounts"`
	} `json:"data"`
	Links LinksPaginated `json:"links"`
	Meta  MetaPaginated  `json:"meta"`
}

EnergyAccountListResponseV2 defines model for EnergyAccountListResponseV2.

type EnergyAccountV2

type EnergyAccountV2 struct {
	AccountId     string                     `json:"accountId" example:"1bbc12c2-ae16-4875-a0f9-8c4ce79c770e"`               // The ID of the account.  To be created in accordance with CDR ID permanence requirements
	AccountNumber *string                    `json:"accountNumber,omitempty" example:"1bbc12c2-ae16-4875-a0f9-8c4ce79c770e"` // Optional identifier of the account as defined by the data holder.  This must be the value presented on physical statements (if it exists) and must not be used for the value of accountId
	CreationDate  *string                    `json:"creationDate,omitempty" example:"2022-01-01"`                            // The date that the account was created or opened. Mandatory if openStatus is OPEN
	DisplayName   *string                    `json:"displayName,omitempty" example:"Albert Wood"`                            // An optional display name for the account if one exists or can be derived.  The content of this field is at the discretion of the data holder
	OpenStatus    *EnergyAccountV2OpenStatus `json:"openStatus,omitempty" example:"OPEN"`                                    // Open or closed status for the account. If not present then OPEN is assumed
	Plans         []EnergyPlans              `json:"plans,omitempty"`                                                        // The array of plans containing service points and associated plan details

}

EnergyAccountV2 defines model for EnergyAccountV2.

type EnergyAccountV2OpenStatus

type EnergyAccountV2OpenStatus string

Open or closed status for the account. If not present then OPEN is assumed

const (
	EnergyAccountV2OpenStatusCLOSED EnergyAccountV2OpenStatus = "CLOSED"
	EnergyAccountV2OpenStatusOPEN   EnergyAccountV2OpenStatus = "OPEN"
)

Defines values for EnergyAccountV2OpenStatus.

type EnergyAdjustments added in v0.1.2

type EnergyAdjustments struct {
	Amount      string `json:"amount" example:"88"`               // The amount of the adjustment
	Description string `json:"description" example:"description"` // A free text description of the adjustment
}

type EnergyBalanceListResponse

type EnergyBalanceListResponse struct {
	Data struct {
		// Array of account balances
		Balances []struct {
			// The ID of the account
			AccountId string `json:"accountId"`

			// The current balance of the account.  A positive value indicates that amount is owing to be paid.  A negative value indicates that the account is in credit
			Balance string `json:"balance"`
		} `json:"balances"`
	} `json:"data"`
	Links LinksPaginated `json:"links"`
	Meta  MetaPaginated  `json:"meta"`
}

EnergyBalanceListResponse defines model for EnergyBalanceListResponse.

type EnergyBalanceResponse

type EnergyBalanceResponse struct {
	Data struct {
		// The current balance of the account.  A positive value indicates that amount is owing to be paid.  A negative value indicates that the account is in credit
		Balance string `json:"balance"`
	} `json:"data"`
	Links Links `json:"links"`
	Meta  Meta  `json:"meta"`
}

EnergyBalanceResponse defines model for EnergyBalanceResponse.

type EnergyBasicRead added in v0.1.2

type EnergyBasicRead struct {
	Quality *EnergyUsageReadBasicReadQuality `json:"quality,omitempty" example:"ACTUAL"` // The quality of the read taken.  If absent then assumed to be ACTUAL

	Value float32 `json:"value" example:"12.12"` // Meter read value.  If positive then it means consumption, if negative it means export
}

type EnergyBillingDemandTransaction

type EnergyBillingDemandTransaction struct {
	Adjustments *[]EnergyAdjustments `json:"adjustments,omitempty"` // Optional array of adjustments arising for this transaction

	Amount string `json:"amount" example:"66"` // The amount charged or credited for this transaction prior to any adjustments being applied.  A negative value indicates a credit

	CalculationFactors *[]EnergyCalculationFactors `json:"calculationFactors,omitempty"` // Additional calculation factors that inform the transaction

	Description *string `json:"description,omitempty" example:"description"` // Optional description of the transaction that can be used for display purposes

	EndDate string `json:"endDate" example:"2007-05-01T15:43:00.12345Z"` // Date and time when the demand period ends

	InvoiceNumber *string `json:"invoiceNumber,omitempty" example:"4"` // The number of the invoice in which this transaction is included if it has been issued

	IsEstimate *bool `json:"isEstimate,omitempty" example:"true"` // Flag indicating if the usage is estimated or actual.  True indicates estimate.  False or absent indicates actual

	Rate float32 `json:"rate" example:"11.15"` // The rate for the demand charge in kVA.  A negative value indicates power generated

	ServicePointId *string `json:"servicePointId,omitempty" example:"11"` // The ID of the service point to which this transaction applies if any

	StartDate string `json:"startDate" example:"2007-05-01T15:43:00.12345Z"` // Date and time when the demand period starts

	TimeOfUseType EnergyBillingDemandTransactionTimeOfUseType `json:"timeOfUseType" example:"AGGREGATE"`
}

EnergyBillingDemandTransaction defines model for EnergyBillingDemandTransaction.

type EnergyBillingDemandTransactionCalculationFactorsType

type EnergyBillingDemandTransactionCalculationFactorsType string

The type of the calculation factor

const (
	EnergyBillingDemandTransactionCalculationFactorsTypeDLF EnergyBillingDemandTransactionCalculationFactorsType = "DLF"
	EnergyBillingDemandTransactionCalculationFactorsTypeMLF EnergyBillingDemandTransactionCalculationFactorsType = "MLF"
)

Defines values for EnergyBillingDemandTransactionCalculationFactorsType.

type EnergyBillingDemandTransactionTimeOfUseType

type EnergyBillingDemandTransactionTimeOfUseType string

The time of use type that the transaction applies to

const (
	EnergyBillingDemandTransactionTimeOfUseTypeAGGREGATE           EnergyBillingDemandTransactionTimeOfUseType = "AGGREGATE"
	EnergyBillingDemandTransactionTimeOfUseTypeCONTROLLEDLOAD      EnergyBillingDemandTransactionTimeOfUseType = "CONTROLLED_LOAD"
	EnergyBillingDemandTransactionTimeOfUseTypeOFFPEAK             EnergyBillingDemandTransactionTimeOfUseType = "OFF_PEAK"
	EnergyBillingDemandTransactionTimeOfUseTypeOFFPEAKDEMANDCHARGE EnergyBillingDemandTransactionTimeOfUseType = "OFF_PEAK_DEMAND_CHARGE"
	EnergyBillingDemandTransactionTimeOfUseTypePEAK                EnergyBillingDemandTransactionTimeOfUseType = "PEAK"
	EnergyBillingDemandTransactionTimeOfUseTypeSHOULDER            EnergyBillingDemandTransactionTimeOfUseType = "SHOULDER"
	EnergyBillingDemandTransactionTimeOfUseTypeSHOULDER1           EnergyBillingDemandTransactionTimeOfUseType = "SHOULDER1"
	EnergyBillingDemandTransactionTimeOfUseTypeSHOULDER2           EnergyBillingDemandTransactionTimeOfUseType = "SHOULDER2"
	EnergyBillingDemandTransactionTimeOfUseTypeSOLAR               EnergyBillingDemandTransactionTimeOfUseType = "SOLAR"
)

Defines values for EnergyBillingDemandTransactionTimeOfUseType.

type EnergyBillingListResponse

type EnergyBillingListResponse struct {
	Data struct {
		// Array of transactions sorted by date and time in descending order
		Transactions []EnergyBillingTransaction `json:"transactions"`
	} `json:"data"`
	Links LinksPaginated `json:"links"`
	Meta  MetaPaginated  `json:"meta"`
}

EnergyBillingListResponse defines model for EnergyBillingListResponse.

type EnergyBillingOnceOffTransaction

type EnergyBillingOnceOffTransaction struct {
	Amount string `json:"amount" example:"88"` // The amount of the charge or credit.  A positive value indicates a charge and a negative value indicates a credit

	Description string `json:"description" example:"description"` // A free text description of the item

	InvoiceNumber *string `json:"invoiceNumber,omitempty" example:"12"` // The number of the invoice in which this transaction is included if it has been issued

	ServicePointId *string `json:"servicePointId,omitempty" example:"765"` // The ID of the service point to which this transaction applies if any
}

EnergyBillingOnceOffTransaction defines model for EnergyBillingOnceOffTransaction.

type EnergyBillingOtherTransaction

type EnergyBillingOtherTransaction struct {
	Adjustments *[]EnergyAdjustments `json:"adjustments,omitempty"` // Optional array of adjustments arising for this transaction

	Amount string `json:"amount" example:"33"` // The amount of the charge

	CalculationFactors *[]EnergyCalculationFactors `json:"calculationFactors,omitempty"` // Additional calculation factors that inform the transaction

	Description string `json:"description" example:"description"` // A free text description of the item

	EndDate *string `json:"endDate,omitempty" example:"2007-05-01T15:43:00.12345Z"` // Optional end date for the application of the charge

	InvoiceNumber *string `json:"invoiceNumber,omitempty" example:"45"` // The number of the invoice in which this transaction is included if it has been issued

	ServicePointId *string `json:"servicePointId,omitempty" example:"100"` // The ID of the service point to which this transaction applies if any

	StartDate *string `json:"startDate,omitempty" example:"2007-05-01T15:43:00.12345Z"` // Optional start date for the application of the charge

	Type *EnergyBillingOtherTransactionType `json:"type,omitempty" example:"REGULATED"` // Type of charge. Assumed to be other if absent
}

EnergyBillingOtherTransaction defines model for EnergyBillingOtherTransaction.

type EnergyBillingOtherTransactionCalculationFactorsType

type EnergyBillingOtherTransactionCalculationFactorsType string

The type of the calculation factor

const (
	EnergyBillingOtherTransactionCalculationFactorsTypeDLF EnergyBillingOtherTransactionCalculationFactorsType = "DLF"
	EnergyBillingOtherTransactionCalculationFactorsTypeMLF EnergyBillingOtherTransactionCalculationFactorsType = "MLF"
)

Defines values for EnergyBillingOtherTransactionCalculationFactorsType.

type EnergyBillingOtherTransactionType

type EnergyBillingOtherTransactionType string

Type of charge. Assumed to be other if absent

const (
	EnergyBillingOtherTransactionTypeENVIRONMENTAL EnergyBillingOtherTransactionType = "ENVIRONMENTAL"
	EnergyBillingOtherTransactionTypeMETERING      EnergyBillingOtherTransactionType = "METERING"
	EnergyBillingOtherTransactionTypeNETWORK       EnergyBillingOtherTransactionType = "NETWORK"
	EnergyBillingOtherTransactionTypeOTHER         EnergyBillingOtherTransactionType = "OTHER"
	EnergyBillingOtherTransactionTypeRCTI          EnergyBillingOtherTransactionType = "RCTI"
	EnergyBillingOtherTransactionTypeREGULATED     EnergyBillingOtherTransactionType = "REGULATED"
	EnergyBillingOtherTransactionTypeRETAILSERVICE EnergyBillingOtherTransactionType = "RETAIL_SERVICE"
)

Defines values for EnergyBillingOtherTransactionType.

type EnergyBillingPaymentTransaction

type EnergyBillingPaymentTransaction struct {
	Amount string                                `json:"amount" example:"66"`   // The amount paid
	Method EnergyBillingPaymentTransactionMethod `json:"method" example:"CASH"` // The method of payment
}

EnergyBillingPaymentTransaction defines model for EnergyBillingPaymentTransaction.

type EnergyBillingPaymentTransactionMethod

type EnergyBillingPaymentTransactionMethod string

The method of payment

const (
	EnergyBillingPaymentTransactionMethodBPAY        EnergyBillingPaymentTransactionMethod = "BPAY"
	EnergyBillingPaymentTransactionMethodCARD        EnergyBillingPaymentTransactionMethod = "CARD"
	EnergyBillingPaymentTransactionMethodCASH        EnergyBillingPaymentTransactionMethod = "CASH"
	EnergyBillingPaymentTransactionMethodCHEQUE      EnergyBillingPaymentTransactionMethod = "CHEQUE"
	EnergyBillingPaymentTransactionMethodDIRECTDEBIT EnergyBillingPaymentTransactionMethod = "DIRECT_DEBIT"
	EnergyBillingPaymentTransactionMethodOTHER       EnergyBillingPaymentTransactionMethod = "OTHER"
	EnergyBillingPaymentTransactionMethodTRANSFER    EnergyBillingPaymentTransactionMethod = "TRANSFER"
)

Defines values for EnergyBillingPaymentTransactionMethod.

type EnergyBillingTransaction

type EnergyBillingTransaction struct {
	AccountId         string                                   `json:"accountId" example:"1bbc12c2-ae16-4875-a0f9-8c4ce79c770e"` // The ID of the account for which transaction applies
	Demand            *EnergyBillingDemandTransaction          `json:"demand,omitempty"`
	ExecutionDateTime string                                   `json:"executionDateTime" example:"2007-05-01T15:43:00.12345Z"` // The date and time that the transaction occurred
	Gst               *string                                  `json:"gst,omitempty" example:"99"`                             // The GST incurred in the transaction.  Should not be included for credits or payments.  If absent zero is assumed
	OnceOff           *EnergyBillingOnceOffTransaction         `json:"onceOff,omitempty"`
	OtherCharges      *EnergyBillingOtherTransaction           `json:"otherCharges,omitempty"`
	Payment           *EnergyBillingPaymentTransaction         `json:"payment,omitempty"`
	TransactionUType  EnergyBillingTransactionTransactionUType `json:"transactionUType" example:"demand"` // Indicator of the type of transaction object present in this record
	Usage             *EnergyBillingUsageTransaction           `json:"usage,omitempty"`
}

EnergyBillingTransaction defines model for EnergyBillingTransaction.

type EnergyBillingTransactionTransactionUType

type EnergyBillingTransactionTransactionUType string

Indicator of the type of transaction object present in this record

Defines values for EnergyBillingTransactionTransactionUType.

type EnergyBillingUsageTransaction

type EnergyBillingUsageTransaction struct {
	Adjustments *[]EnergyAdjustments `json:"adjustments,omitempty"` // Optional array of adjustments arising for this transaction

	Amount string `json:"amount"  example:"43.65"` // The amount charged or credited for this transaction prior to any adjustments being applied.  A negative value indicates a credit

	CalculationFactors *[]EnergyCalculationFactors `json:"calculationFactors,omitempty"` // Additional calculation factors that inform the transaction

	Description *string `json:"description,omitempty" example:"description"` // Optional description of the transaction that can be used for display purposes

	EndDate string `json:"endDate" example:"2007-05-01T15:43:00.12345Z"` // Date and time when the usage period ends

	InvoiceNumber *string `json:"invoiceNumber,omitempty" example:"8"` // The number of the invoice in which this transaction is included if it has been issued

	IsEstimate *bool `json:"isEstimate,omitempty" example:"true"` // Flag indicating if the usage is estimated or actual.  True indicates estimate.  False or absent indicates actual

	MeasureUnit *EnergyBillingUsageTransactionMeasureUnit `json:"measureUnit,omitempty" example:"KWH"` // The measurement unit of rate. Assumed to be KWH if absent

	ServicePointId *string `json:"servicePointId,omitempty" example:"15"` // The ID of the service point to which this transaction applies if any

	StartDate string `json:"startDate" example:"2007-05-01T15:43:00.12345Z"` // Date and time when the usage period starts

	TimeOfUseType EnergyBillingUsageTransactionTimeOfUseType `json:"timeOfUseType" example:"PEAK"` // The time of use type that the transaction applies to

	Usage float32 `json:"usage" example:"32.55"` // The usage for the period in measure unit.  A negative value indicates power generated
}

EnergyBillingUsageTransaction defines model for EnergyBillingUsageTransaction.

type EnergyBillingUsageTransactionCalculationFactorsType

type EnergyBillingUsageTransactionCalculationFactorsType string

The type of the calculation factor

Defines values for EnergyBillingUsageTransactionCalculationFactorsType.

type EnergyBillingUsageTransactionMeasureUnit

type EnergyBillingUsageTransactionMeasureUnit string

The measurement unit of rate. Assumed to be KWH if absent

const (
	EnergyBillingUsageTransactionMeasureUnitDAYS  EnergyBillingUsageTransactionMeasureUnit = "DAYS"
	EnergyBillingUsageTransactionMeasureUnitKVA   EnergyBillingUsageTransactionMeasureUnit = "KVA"
	EnergyBillingUsageTransactionMeasureUnitKVAR  EnergyBillingUsageTransactionMeasureUnit = "KVAR"
	EnergyBillingUsageTransactionMeasureUnitKVARH EnergyBillingUsageTransactionMeasureUnit = "KVARH"
	EnergyBillingUsageTransactionMeasureUnitKW    EnergyBillingUsageTransactionMeasureUnit = "KW"
	EnergyBillingUsageTransactionMeasureUnitKWH   EnergyBillingUsageTransactionMeasureUnit = "KWH"
	EnergyBillingUsageTransactionMeasureUnitMETER EnergyBillingUsageTransactionMeasureUnit = "METER"
	EnergyBillingUsageTransactionMeasureUnitMONTH EnergyBillingUsageTransactionMeasureUnit = "MONTH"
)

Defines values for EnergyBillingUsageTransactionMeasureUnit.

type EnergyBillingUsageTransactionTimeOfUseType

type EnergyBillingUsageTransactionTimeOfUseType string

The time of use type that the transaction applies to

const (
	EnergyBillingUsageTransactionTimeOfUseTypeAGGREGATE           EnergyBillingUsageTransactionTimeOfUseType = "AGGREGATE"
	EnergyBillingUsageTransactionTimeOfUseTypeCONTROLLEDLOAD      EnergyBillingUsageTransactionTimeOfUseType = "CONTROLLED_LOAD"
	EnergyBillingUsageTransactionTimeOfUseTypeOFFPEAK             EnergyBillingUsageTransactionTimeOfUseType = "OFF_PEAK"
	EnergyBillingUsageTransactionTimeOfUseTypeOFFPEAKDEMANDCHARGE EnergyBillingUsageTransactionTimeOfUseType = "OFF_PEAK_DEMAND_CHARGE"
	EnergyBillingUsageTransactionTimeOfUseTypePEAK                EnergyBillingUsageTransactionTimeOfUseType = "PEAK"
	EnergyBillingUsageTransactionTimeOfUseTypeSHOULDER            EnergyBillingUsageTransactionTimeOfUseType = "SHOULDER"
	EnergyBillingUsageTransactionTimeOfUseTypeSHOULDER1           EnergyBillingUsageTransactionTimeOfUseType = "SHOULDER1"
	EnergyBillingUsageTransactionTimeOfUseTypeSHOULDER2           EnergyBillingUsageTransactionTimeOfUseType = "SHOULDER2"
	EnergyBillingUsageTransactionTimeOfUseTypeSOLAR               EnergyBillingUsageTransactionTimeOfUseType = "SOLAR"
)

Defines values for EnergyBillingUsageTransactionTimeOfUseType.

type EnergyCalculationFactors added in v0.1.2

type EnergyCalculationFactors struct {
	Type  EnergyBillingDemandTransactionCalculationFactorsType `json:"type" example:"DLF"`    // The type of the calculation factor
	Value float32                                              `json:"value" example:"44.44"` // The value of the calculation factor
}

type EnergyConcession

type EnergyConcession struct {
	// Display text providing more information on the concession. Mandatory if type is VARIABLE
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// Optional link to additional information regarding the concession
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// Conditional attribute for the amount of discount for the concession- required if type is FIXED_AMOUNT
	Amount *string `json:"amount,omitempty"`

	// Array of ENUM's to specify what the concession applies to. Multiple ENUM values can be provided. If absent, USAGE is assumed
	AppliedTo *[]EnergyConcessionAppliedTo `json:"appliedTo,omitempty"`

	// Conditional attribute for frequency at which a concession is applied. Required if type is FIXED_AMOUNT or FIXED_PERCENTAGE. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
	DiscountFrequency *string `json:"discountFrequency,omitempty"`

	// The display name of the concession
	DisplayName string `json:"displayName"`

	// Optional end date for the application of the concession
	EndDate *string `json:"endDate,omitempty"`

	// Conditional attribute for the percentage of discount of concession - required if type is FIXED_PERCENTAGE
	Percentage *string `json:"percentage,omitempty"`

	// Optional start date for the application of the concession
	StartDate *string `json:"startDate,omitempty"`

	// Indicator of the method of concession calculation
	Type EnergyConcessionType `json:"type"`
}

EnergyConcession defines model for EnergyConcession.

type EnergyConcessionAppliedTo

type EnergyConcessionAppliedTo string

EnergyConcessionAppliedTo defines model for EnergyConcession.AppliedTo.

const (
	CONTROLLEDLOAD EnergyConcessionAppliedTo = "CONTROLLED_LOAD"
	INVOICE        EnergyConcessionAppliedTo = "INVOICE"
	SERVICECHARGE  EnergyConcessionAppliedTo = "SERVICE_CHARGE"
	USAGE          EnergyConcessionAppliedTo = "USAGE"
)

Defines values for EnergyConcessionAppliedTo.

type EnergyConcessionType

type EnergyConcessionType string

Indicator of the method of concession calculation

const (
	EnergyConcessionTypeFIXEDAMOUNT     EnergyConcessionType = "FIXED_AMOUNT"
	EnergyConcessionTypeFIXEDPERCENTAGE EnergyConcessionType = "FIXED_PERCENTAGE"
	EnergyConcessionTypeVARIABLE        EnergyConcessionType = "VARIABLE"
)

Defines values for EnergyConcessionType.

type EnergyConcessionsResponse

type EnergyConcessionsResponse struct {
	Data struct {
		// Array may be empty if no concessions exist
		Concessions []EnergyConcession `json:"concessions"`
	} `json:"data"`
	Links Links `json:"links"`
	Meta  Meta  `json:"meta"`
}

EnergyConcessionsResponse defines model for EnergyConcessionsResponse.

type EnergyDerDetailResponse

type EnergyDerDetailResponse struct {
	Data  EnergyDerRecord `json:"data"`
	Links Links           `json:"links"`
	Meta  Meta            `json:"meta"`
}

EnergyDerDetailResponse defines model for EnergyDerDetailResponse.

type EnergyDerListResponse

type EnergyDerListResponse struct {
	Data struct {
		// Array of meter reads
		DerRecords []EnergyDerRecord `json:"derRecords"`
	} `json:"data"`
	Links LinksPaginated `json:"links"`
	Meta  MetaPaginated  `json:"meta"`
}

EnergyDerListResponse defines model for EnergyDerListResponse.

type EnergyDerRecord

type EnergyDerRecord struct {
	AcConnections []struct {
		// The date that the DER installation is commissioned
		CommissioningDate string `json:"commissioningDate"`

		// AC Connection ID as defined in the DER register.  Does not align with CDR ID permanence standards
		ConnectionIdentifier float32 `json:"connectionIdentifier"`

		// Number of AC Connections in the group. For the suite of AC Connections to be considered as a group, all of the AC Connections included must have the same attributes
		Count      int `json:"count"`
		DerDevices []struct {
			// Number of devices in the group of DER devices
			Count int `json:"count"`

			// Unique identifier for a single DER device or a group of DER devices with the same attributes. Does not align with CDR ID permanence standards
			DeviceIdentifier float32 `json:"deviceIdentifier"`

			// The name of the device manufacturer. If absent then assumed to be “unknown”
			Manufacturer *string `json:"manufacturer,omitempty"`

			// The model number of the device. If absent then assumed to be “unknown”
			ModelNumber *string `json:"modelNumber,omitempty"`

			// Maximum output in kVA that is listed in the product specification by the manufacturer. This refers to the capacity of each unit within the device group. Default is 0 if value not known
			NominalRatedCapacity float32 `json:"nominalRatedCapacity"`

			// Maximum storage capacity in kVAh. This refers to the capacity of each storage module within the device group. Mandatory if type is equal to “STORAGE”. Default is 0 if value not known
			NominalStorageCapacity *float32 `json:"nominalStorageCapacity,omitempty"`

			// Code used to indicate the status of the device. This will be used to identify if an inverter is active or inactive or decommissioned
			Status *EnergyDerRecordAcConnectionsDerDevicesStatus `json:"status,omitempty"`

			// Used to indicate the primary technology used in the DER device. This field is also used to record for example the battery chemistry, or the type of PV panel. It is also used to record if a battery is contained in an electric vehicle connected in a vehicle-to-grid arrangement. If absent then assumed to be “other”
			Subtype *string `json:"subtype,omitempty"`

			// Used to indicate the primary technology used in the DER device
			Type EnergyDerRecordAcConnectionsDerDevicesType `json:"type"`
		} `json:"derDevices"`

		// Indicates whether the DER device is connected via an inverter (and what category of inverter it is) or not (e.g. rotating machine). If absent, assume equipment type to be “OTHER”.
		EquipmentType *EnergyDerRecordAcConnectionsEquipmentType `json:"equipmentType,omitempty"`

		// The rated AC output power that is listed in the product specified by the manufacturer. Mandatory if equipmentType is INVERTER. Default is 0 if value not known
		InverterDeviceCapacity *float32 `json:"inverterDeviceCapacity,omitempty"`

		// The inverter model number. Mandatory if equipmentType is INVERTER
		InverterModelNumber *string `json:"inverterModelNumber,omitempty"`

		// The inverter series. Mandatory if equipmentType is INVERTER
		InverterSeries *string `json:"inverterSeries,omitempty"`

		// The name of the inverter manufacturer. Mandatory if equipmentType is INVERTER
		ManufacturerName *string `json:"manufacturerName,omitempty"`

		// Code used to indicate the status of the Inverter. This will be used to identify if an inverter is active or inactive or decommissioned
		Status EnergyDerRecordAcConnectionsStatus `json:"status"`
	} `json:"acConnections"`

	// Approved small generating unit capacity as agreed with NSP in the connection agreement, expressed in kVA. Value of 0 indicates no DER record exists for the given servicePointId
	ApprovedCapacity float32 `json:"approvedCapacity"`

	// The number of phases available for the installation of DER. Acceptable values are 0, 1, 2 or 3. Value of 0 indicates no DER record exists for the given servicePointId
	AvailablePhasesCount int `json:"availablePhasesCount"`

	// For DER installations where NSPs specify the need for additional forms of protection above those inbuilt in an inverter.  If absent then assumed to be false
	HasCentralProtectionControl *bool `json:"hasCentralProtectionControl,omitempty"`

	// The number of phases that DER is connected to. Acceptable values are 0, 1, 2 or 3. Value of 0 indicates no DER record exists for the given servicePointId
	InstalledPhasesCount int `json:"installedPhasesCount"`

	// For identification of small generating units designed with the ability to operate in an islanded mode
	IslandableInstallation bool `json:"islandableInstallation"`

	// Required only when the hasCentralProtectionAndControl flag is set to true.  One or more of the object fields will be provided to describe the protection modes in place
	ProtectionMode *struct {
		// Maximum amount of power (kVA) that may be exported from a connection point to the grid, as monitored by a control / relay function. An absent value indicates no limit
		ExportLimitKva *float32 `json:"exportLimitKva,omitempty"`

		// Rate of change of frequency trip point (Hz/s).
		FrequencyRateOfChange *float32 `json:"frequencyRateOfChange,omitempty"`

		// Description of the form of inter-trip (e.g. 'from local substation').
		InterTripScheme *string `json:"interTripScheme,omitempty"`

		// Trip voltage.
		NeutralVoltageDisplacement *float32 `json:"neutralVoltageDisplacement,omitempty"`

		// Protective function limit in Hz.
		OverFrequencyProtection *float32 `json:"overFrequencyProtection,omitempty"`

		// Trip delay time in seconds.
		OverFrequencyProtectionDelay *float32 `json:"overFrequencyProtectionDelay,omitempty"`

		// Protective function limit in V.
		OverVoltageProtection *float32 `json:"overVoltageProtection,omitempty"`

		// Trip delay time in seconds.
		OverVoltageProtectionDelay *float32 `json:"overVoltageProtectionDelay,omitempty"`

		// Sustained over voltage.
		SustainedOverVoltage *float32 `json:"sustainedOverVoltage,omitempty"`

		// Sustained Over voltage protection delay in seconds.
		SustainedOverVoltageDelay *float32 `json:"sustainedOverVoltageDelay,omitempty"`

		// Protective function limit in Hz.
		UnderFrequencyProtection *float32 `json:"underFrequencyProtection,omitempty"`

		// Trip delay time in seconds.
		UnderFrequencyProtectionDelay *float32 `json:"underFrequencyProtectionDelay,omitempty"`

		// Protective function limit in V.
		UnderVoltageProtection *float32 `json:"underVoltageProtection,omitempty"`

		// Trip delay time in seconds.
		UnderVoltageProtectionDelay *float32 `json:"underVoltageProtectionDelay,omitempty"`

		// Trip angle in degrees.
		VoltageVectorShift *float32 `json:"voltageVectorShift,omitempty"`
	} `json:"protectionMode,omitempty"`

	// Tokenised ID of the service point to be used for referring to the service point in the CDR API suite.  To be created in accordance with CDR ID permanence requirements
	ServicePointId string `json:"servicePointId"`
}

EnergyDerRecord defines model for EnergyDerRecord.

type EnergyDerRecordAcConnectionsDerDevicesStatus

type EnergyDerRecordAcConnectionsDerDevicesStatus string

Code used to indicate the status of the device. This will be used to identify if an inverter is active or inactive or decommissioned

const (
	EnergyDerRecordAcConnectionsDerDevicesStatusACTIVE         EnergyDerRecordAcConnectionsDerDevicesStatus = "ACTIVE"
	EnergyDerRecordAcConnectionsDerDevicesStatusDECOMMISSIONED EnergyDerRecordAcConnectionsDerDevicesStatus = "DECOMMISSIONED"
	EnergyDerRecordAcConnectionsDerDevicesStatusINACTIVE       EnergyDerRecordAcConnectionsDerDevicesStatus = "INACTIVE"
)

Defines values for EnergyDerRecordAcConnectionsDerDevicesStatus.

type EnergyDerRecordAcConnectionsDerDevicesType

type EnergyDerRecordAcConnectionsDerDevicesType string

Used to indicate the primary technology used in the DER device

const (
	EnergyDerRecordAcConnectionsDerDevicesTypeFOSSIL     EnergyDerRecordAcConnectionsDerDevicesType = "FOSSIL"
	EnergyDerRecordAcConnectionsDerDevicesTypeGEOTHERMAL EnergyDerRecordAcConnectionsDerDevicesType = "GEOTHERMAL"
	EnergyDerRecordAcConnectionsDerDevicesTypeHYDRO      EnergyDerRecordAcConnectionsDerDevicesType = "HYDRO"
	EnergyDerRecordAcConnectionsDerDevicesTypeOTHER      EnergyDerRecordAcConnectionsDerDevicesType = "OTHER"
	EnergyDerRecordAcConnectionsDerDevicesTypeRENEWABLE  EnergyDerRecordAcConnectionsDerDevicesType = "RENEWABLE"
	EnergyDerRecordAcConnectionsDerDevicesTypeSOLARPV    EnergyDerRecordAcConnectionsDerDevicesType = "SOLAR_PV"
	EnergyDerRecordAcConnectionsDerDevicesTypeSTORAGE    EnergyDerRecordAcConnectionsDerDevicesType = "STORAGE"
	EnergyDerRecordAcConnectionsDerDevicesTypeWIND       EnergyDerRecordAcConnectionsDerDevicesType = "WIND"
)

Defines values for EnergyDerRecordAcConnectionsDerDevicesType.

type EnergyDerRecordAcConnectionsEquipmentType

type EnergyDerRecordAcConnectionsEquipmentType string

Indicates whether the DER device is connected via an inverter (and what category of inverter it is) or not (e.g. rotating machine). If absent, assume equipment type to be “OTHER”.

const (
	EnergyDerRecordAcConnectionsEquipmentTypeINVERTER EnergyDerRecordAcConnectionsEquipmentType = "INVERTER"
	EnergyDerRecordAcConnectionsEquipmentTypeOTHER    EnergyDerRecordAcConnectionsEquipmentType = "OTHER"
)

Defines values for EnergyDerRecordAcConnectionsEquipmentType.

type EnergyDerRecordAcConnectionsStatus

type EnergyDerRecordAcConnectionsStatus string

Code used to indicate the status of the Inverter. This will be used to identify if an inverter is active or inactive or decommissioned

const (
	EnergyDerRecordAcConnectionsStatusACTIVE         EnergyDerRecordAcConnectionsStatus = "ACTIVE"
	EnergyDerRecordAcConnectionsStatusDECOMMISSIONED EnergyDerRecordAcConnectionsStatus = "DECOMMISSIONED"
	EnergyDerRecordAcConnectionsStatusINACTIVE       EnergyDerRecordAcConnectionsStatus = "INACTIVE"
)

Defines values for EnergyDerRecordAcConnectionsStatus.

type EnergyIntervalRead added in v0.1.2

type EnergyIntervalRead struct {
	AggregateValue float32 `json:"aggregateValue" example:"55.55"` // The aggregate sum of the interval read values. If positive then it means net consumption, if negative it means net export

	IntervalReads *[]float32 `json:"intervalReads,omitempty" example:"11.12,13.14"` // Array of Interval read values. If positive then it means consumption, if negative it means export. Required when interval-reads query parameter equals FULL or  MIN_30.<br>Each read value indicates the read for the interval specified by readIntervalLength beginning at midnight of readStartDate (for example 00:00 to 00:30 would be the first reading in a 30 minute Interval)

	ReadIntervalLength *int `json:"readIntervalLength,omitempty" example:"2"` // Read interval length in minutes. Required when interval-reads query parameter equals FULL or MIN_30

	ReadQualities *[]EnergyReadQualities `json:"readQualities,omitempty"` //  Specifies quality of reads that are not ACTUAL.  For read indices that are not specified, quality is assumed to be ACTUAL. If not present, all quality of all reads are assumed to be actual. Required when interval-reads query parameter equals FULL or MIN_30
}

type EnergyInvoice

type EnergyInvoice struct {
	// Object contain charges and credits related to electricity usage
	AccountCharges *EnergyInvoiceAccountCharges `json:"accountCharges,omitempty"`

	// The ID of the account for which the invoice was issued
	AccountId string `json:"accountId"`

	// The account balance at the time the invoice was issued
	BalanceAtIssue string `json:"balanceAtIssue"`

	// The date that the invoice is due to be paid
	DueDate     *string                               `json:"dueDate,omitempty"`
	Electricity *EnergyInvoiceElectricityUsageCharges `json:"electricity,omitempty"`
	Gas         *EnergyInvoiceGasUsageCharges         `json:"gas,omitempty"`

	// The total GST amount for this invoice.  If absent then zero is assumed
	GstAmount *string `json:"gstAmount,omitempty"`

	// The net amount due for this invoice regardless of previous balance
	InvoiceAmount *string `json:"invoiceAmount,omitempty"`

	// The number assigned to this invoice by the energy Retailer
	InvoiceNumber string `json:"invoiceNumber"`

	// The date that the invoice was actually issued (as opposed to generated or calculated)
	IssueDate string `json:"issueDate"`

	// A discount for on time payment
	PayOnTimeDiscount *struct {
		// The date by which the invoice must be paid to receive the pay on time discount
		Date string `json:"date"`

		// The amount that will be discounted if the invoice is paid by the date specified
		DiscountAmount string `json:"discountAmount"`

		// The GST amount that will be discounted if the invoice is paid by the date specified.  If absent then zero is assumed
		GstAmount *string `json:"gstAmount,omitempty"`
	} `json:"payOnTimeDiscount,omitempty"`

	// Indicator of the payment status for the invoice
	PaymentStatus EnergyInvoicePaymentStatus `json:"paymentStatus"`

	// Object containing the start and end date for the period covered by the invoice.  Mandatory if any usage or demand based charges are included in the invoice
	Period *struct {
		// The end date of the period covered by this invoice
		EndDate string `json:"endDate"`

		// The start date of the period covered by this invoice
		StartDate string `json:"startDate"`
	} `json:"period,omitempty"`

	// Array of service point IDs to which this invoice applies. May be empty if the invoice contains no electricity usage related charges
	ServicePoints []string `json:"servicePoints"`
}

EnergyInvoice defines model for EnergyInvoice.

type EnergyInvoiceAccountCharges

type EnergyInvoiceAccountCharges struct {
	// The aggregate total of account level charges for the period covered by the invoice
	TotalCharges string `json:"totalCharges"`

	// The aggregate total of account level discounts or credits for the period covered by the invoice
	TotalDiscounts string `json:"totalDiscounts"`

	// The total GST for all account level charges.  If absent then zero is assumed
	TotalGst *string `json:"totalGst,omitempty"`
}

Object contain charges and credits related to electricity usage

type EnergyInvoiceElectricityUsageCharges

type EnergyInvoiceElectricityUsageCharges struct {
	// Optional array of charges that may be part of the invoice (for e.g. environmental charges for C&I consumers) (exclusive of GST)
	OtherCharges *[]struct {
		// The aggregate total of charges for this item (exclusive of GST)
		Amount string `json:"amount"`

		// A free text description of the type of charge
		Description string `json:"description"`

		// Type of charge. Assumed to be other if absent
		Type *EnergyInvoiceElectricityUsageChargesOtherChargesType `json:"type,omitempty"`
	} `json:"otherCharges,omitempty"`

	// The aggregate total of generation credits for the period covered by the invoice (exclusive of GST)
	TotalGenerationCredits string `json:"totalGenerationCredits"`

	// The total GST for all electricity usage charges.  If absent then zero is assumed
	TotalGst *string `json:"totalGst,omitempty"`

	// The aggregate total of any once off charges arising from electricity usage for the period covered by the invoice (exclusive of GST)
	TotalOnceOffCharges string `json:"totalOnceOffCharges"`

	// The aggregate total of any once off discounts or credits arising from electricity usage for the period covered by the invoice (exclusive of GST)
	TotalOnceOffDiscounts string `json:"totalOnceOffDiscounts"`

	// The aggregate total of usage charges for the period covered by the invoice (exclusive of GST)
	TotalUsageCharges string `json:"totalUsageCharges"`
}

EnergyInvoiceElectricityUsageCharges defines model for EnergyInvoiceElectricityUsageCharges.

type EnergyInvoiceElectricityUsageChargesOtherChargesType

type EnergyInvoiceElectricityUsageChargesOtherChargesType string

Type of charge. Assumed to be other if absent

const (
	EnergyInvoiceElectricityUsageChargesOtherChargesTypeENVIRONMENTAL EnergyInvoiceElectricityUsageChargesOtherChargesType = "ENVIRONMENTAL"
	EnergyInvoiceElectricityUsageChargesOtherChargesTypeMETERING      EnergyInvoiceElectricityUsageChargesOtherChargesType = "METERING"
	EnergyInvoiceElectricityUsageChargesOtherChargesTypeNETWORK       EnergyInvoiceElectricityUsageChargesOtherChargesType = "NETWORK"
	EnergyInvoiceElectricityUsageChargesOtherChargesTypeOTHER         EnergyInvoiceElectricityUsageChargesOtherChargesType = "OTHER"
	EnergyInvoiceElectricityUsageChargesOtherChargesTypeRCTI          EnergyInvoiceElectricityUsageChargesOtherChargesType = "RCTI"
	EnergyInvoiceElectricityUsageChargesOtherChargesTypeREGULATED     EnergyInvoiceElectricityUsageChargesOtherChargesType = "REGULATED"
	EnergyInvoiceElectricityUsageChargesOtherChargesTypeRETAILSERVICE EnergyInvoiceElectricityUsageChargesOtherChargesType = "RETAIL_SERVICE"
)

Defines values for EnergyInvoiceElectricityUsageChargesOtherChargesType.

type EnergyInvoiceGasUsageCharges

type EnergyInvoiceGasUsageCharges struct {
	// Optional array of charges that may be part of the invoice (for e.g. environmental charges for C&I consumers) (exclusive of GST)
	OtherCharges *[]struct {
		// The aggregate total of charges for this item (exclusive of GST)
		Amount string `json:"amount"`

		// A free text description of the type of charge
		Description string `json:"description"`

		// Type of charge. Assumed to be other if absent
		Type *EnergyInvoiceGasUsageChargesOtherChargesType `json:"type,omitempty"`
	} `json:"otherCharges,omitempty"`

	// The aggregate total of generation credits for the period covered by the invoice (exclusive of GST)
	TotalGenerationCredits string `json:"totalGenerationCredits"`

	// The total GST for all electricity usage charges.  If absent then zero is assumed
	TotalGst *string `json:"totalGst,omitempty"`

	// The aggregate total of any once off charges arising from electricity usage for the period covered by the invoice (exclusive of GST)
	TotalOnceOffCharges string `json:"totalOnceOffCharges"`

	// The aggregate total of any once off discounts or credits arising from electricity usage for the period covered by the invoice (exclusive of GST)
	TotalOnceOffDiscounts string `json:"totalOnceOffDiscounts"`

	// The aggregate total of usage charges for the period covered by the invoice (exclusive of GST)
	TotalUsageCharges string `json:"totalUsageCharges"`
}

EnergyInvoiceGasUsageCharges defines model for EnergyInvoiceGasUsageCharges.

type EnergyInvoiceGasUsageChargesOtherChargesType

type EnergyInvoiceGasUsageChargesOtherChargesType string

Type of charge. Assumed to be other if absent

const (
	EnergyInvoiceGasUsageChargesOtherChargesTypeENVIRONMENTAL EnergyInvoiceGasUsageChargesOtherChargesType = "ENVIRONMENTAL"
	EnergyInvoiceGasUsageChargesOtherChargesTypeMETERING      EnergyInvoiceGasUsageChargesOtherChargesType = "METERING"
	EnergyInvoiceGasUsageChargesOtherChargesTypeNETWORK       EnergyInvoiceGasUsageChargesOtherChargesType = "NETWORK"
	EnergyInvoiceGasUsageChargesOtherChargesTypeOTHER         EnergyInvoiceGasUsageChargesOtherChargesType = "OTHER"
	EnergyInvoiceGasUsageChargesOtherChargesTypeRCTI          EnergyInvoiceGasUsageChargesOtherChargesType = "RCTI"
	EnergyInvoiceGasUsageChargesOtherChargesTypeREGULATED     EnergyInvoiceGasUsageChargesOtherChargesType = "REGULATED"
	EnergyInvoiceGasUsageChargesOtherChargesTypeRETAILSERVICE EnergyInvoiceGasUsageChargesOtherChargesType = "RETAIL_SERVICE"
)

Defines values for EnergyInvoiceGasUsageChargesOtherChargesType.

type EnergyInvoiceListResponse

type EnergyInvoiceListResponse struct {
	Data struct {
		// Array of invoices sorted by issue date in descending order
		Invoices []EnergyInvoice `json:"invoices"`
	} `json:"data"`
	Links LinksPaginated `json:"links"`
	Meta  MetaPaginated  `json:"meta"`
}

EnergyInvoiceListResponse defines model for EnergyInvoiceListResponse.

type EnergyInvoicePaymentStatus

type EnergyInvoicePaymentStatus string

Indicator of the payment status for the invoice

const (
	NOTPAID       EnergyInvoicePaymentStatus = "NOT_PAID"
	PARTIALLYPAID EnergyInvoicePaymentStatus = "PARTIALLY_PAID"
)

Defines values for EnergyInvoicePaymentStatus.

type EnergyPaymentSchedule

type EnergyPaymentSchedule struct {
	// Optional payment amount indicating that a constant payment amount is scheduled to be paid (used in bill smooting scenarios)
	Amount *string `json:"amount,omitempty"`

	// Represents a regular credit card payment schedule. Mandatory if paymentScheduleUType is set to cardDebit
	CardDebit *struct {
		// The mechanism by which the payment amount is calculated.  Explanation of values are as follows:<br/><ul><li>**STATIC** - Indicates a consistent, static amount, per payment</li><li>**BALANCE** - Indicates that the outstanding balance for the account is paid per period</li><li>**CALCULATED** - Indicates that the payment amount is variable and calculated using a pre-defined algorithm</li></ul>
		CalculationType EnergyPaymentScheduleCardDebitCalculationType `json:"calculationType"`

		// The type of credit card held on file
		CardScheme EnergyPaymentScheduleCardDebitCardScheme `json:"cardScheme"`

		// The frequency that payments will occur.  Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
		PaymentFrequency string `json:"paymentFrequency"`
	} `json:"cardDebit,omitempty"`

	// Represents a regular payment from a digital wallet. Mandatory if paymentScheduleUType is set to digitalWallet
	DigitalWallet *struct {
		// The mechanism by which the payment amount is calculated.  Explanation of values are as follows:<br/><ul><li>**STATIC** - Indicates a consistent, static amount, per payment</li><li>**BALANCE** - Indicates that the outstanding balance for the account is paid per period</li><li>**CALCULATED** - Indicates that the payment amount is variable and calculated using a pre-defined algorithm</li></ul>
		CalculationType EnergyPaymentScheduleDigitalWalletCalculationType `json:"calculationType"`

		// The identifier of the digital wallet (dependent on type)
		Identifier string `json:"identifier"`

		// The name assigned to the digital wallet by the owner of the wallet, else the display name provided by the digital wallet provider
		Name string `json:"name"`

		// The frequency that payments will occur.  Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
		PaymentFrequency string `json:"paymentFrequency"`

		// The provider of the digital wallet
		Provider EnergyPaymentScheduleDigitalWalletProvider `json:"provider"`

		// The type of the digital wallet identifier
		Type EnergyPaymentScheduleDigitalWalletType `json:"type"`
	} `json:"digitalWallet,omitempty"`

	// Represents a regular direct debit from a specified bank account. Mandatory if paymentScheduleUType is set to directDebit
	DirectDebit *struct {
		// The unmasked account number for the account to be debited. Is expected to be formatted as digits only with leading zeros included and no punctuation or spaces.  Is required if isTokenised is absent or false
		AccountNumber *string `json:"accountNumber,omitempty"`

		// The unmasked BSB for the account to be debited. Is expected to be formatted as digits only with leading zeros included and no punctuation or spaces.  Is required if isTokenised is absent or false
		Bsb *string `json:"bsb,omitempty"`

		// The mechanism by which the payment amount is calculated.  Explanation of values are as follows:<br/><ul><li>**STATIC** - Indicates a consistent, static amount, per payment</li><li>**BALANCE** - Indicates that the outstanding balance for the account is paid per period</li><li>**CALCULATED** - Indicates that the payment amount is variable and calculated using a pre-defined algorithm</li></ul>
		CalculationType EnergyPaymentScheduleDirectDebitCalculationType `json:"calculationType"`

		// Flag indicating that the account details are tokenised and cannot be shared.  False if absent
		IsTokenised *bool `json:"isTokenised,omitempty"`

		// The frequency that payments will occur.  Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
		PaymentFrequency string `json:"paymentFrequency"`
	} `json:"directDebit,omitempty"`

	// Represents a manual payment schedule where the customer pays in response to a delivered statement. Mandatory if paymentScheduleUType is set to manualPayment
	ManualPayment *struct {
		// The frequency with which a bill will be issued.  Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
		BillFrequency string `json:"billFrequency"`
	} `json:"manualPayment,omitempty"`

	// The type of object present in this response
	PaymentScheduleUType EnergyPaymentSchedulePaymentScheduleUType `json:"paymentScheduleUType"`
}

EnergyPaymentSchedule defines model for EnergyPaymentSchedule.

type EnergyPaymentScheduleCardDebitCalculationType

type EnergyPaymentScheduleCardDebitCalculationType string

The mechanism by which the payment amount is calculated. Explanation of values are as follows:<br/><ul><li>**STATIC** - Indicates a consistent, static amount, per payment</li><li>**BALANCE** - Indicates that the outstanding balance for the account is paid per period</li><li>**CALCULATED** - Indicates that the payment amount is variable and calculated using a pre-defined algorithm</li></ul>

const (
	EnergyPaymentScheduleCardDebitCalculationTypeBALANCE    EnergyPaymentScheduleCardDebitCalculationType = "BALANCE"
	EnergyPaymentScheduleCardDebitCalculationTypeCALCULATED EnergyPaymentScheduleCardDebitCalculationType = "CALCULATED"
	EnergyPaymentScheduleCardDebitCalculationTypeSTATIC     EnergyPaymentScheduleCardDebitCalculationType = "STATIC"
)

Defines values for EnergyPaymentScheduleCardDebitCalculationType.

type EnergyPaymentScheduleCardDebitCardScheme

type EnergyPaymentScheduleCardDebitCardScheme string

The type of credit card held on file

const (
	EnergyPaymentScheduleCardDebitCardSchemeAMEX       EnergyPaymentScheduleCardDebitCardScheme = "AMEX"
	EnergyPaymentScheduleCardDebitCardSchemeDINERS     EnergyPaymentScheduleCardDebitCardScheme = "DINERS"
	EnergyPaymentScheduleCardDebitCardSchemeMASTERCARD EnergyPaymentScheduleCardDebitCardScheme = "MASTERCARD"
	EnergyPaymentScheduleCardDebitCardSchemeOTHER      EnergyPaymentScheduleCardDebitCardScheme = "OTHER"
	EnergyPaymentScheduleCardDebitCardSchemeUNKNOWN    EnergyPaymentScheduleCardDebitCardScheme = "UNKNOWN"
	EnergyPaymentScheduleCardDebitCardSchemeVISA       EnergyPaymentScheduleCardDebitCardScheme = "VISA"
)

Defines values for EnergyPaymentScheduleCardDebitCardScheme.

type EnergyPaymentScheduleDigitalWalletCalculationType

type EnergyPaymentScheduleDigitalWalletCalculationType string

The mechanism by which the payment amount is calculated. Explanation of values are as follows:<br/><ul><li>**STATIC** - Indicates a consistent, static amount, per payment</li><li>**BALANCE** - Indicates that the outstanding balance for the account is paid per period</li><li>**CALCULATED** - Indicates that the payment amount is variable and calculated using a pre-defined algorithm</li></ul>

const (
	EnergyPaymentScheduleDigitalWalletCalculationTypeBALANCE    EnergyPaymentScheduleDigitalWalletCalculationType = "BALANCE"
	EnergyPaymentScheduleDigitalWalletCalculationTypeCALCULATED EnergyPaymentScheduleDigitalWalletCalculationType = "CALCULATED"
	EnergyPaymentScheduleDigitalWalletCalculationTypeSTATIC     EnergyPaymentScheduleDigitalWalletCalculationType = "STATIC"
)

Defines values for EnergyPaymentScheduleDigitalWalletCalculationType.

type EnergyPaymentScheduleDigitalWalletProvider

type EnergyPaymentScheduleDigitalWalletProvider string

The provider of the digital wallet

const (
	EnergyPaymentScheduleDigitalWalletProviderOTHER    EnergyPaymentScheduleDigitalWalletProvider = "OTHER"
	EnergyPaymentScheduleDigitalWalletProviderPAYPALAU EnergyPaymentScheduleDigitalWalletProvider = "PAYPAL_AU"
)

Defines values for EnergyPaymentScheduleDigitalWalletProvider.

type EnergyPaymentScheduleDigitalWalletType

type EnergyPaymentScheduleDigitalWalletType string

The type of the digital wallet identifier

const (
	CONTACTNAME EnergyPaymentScheduleDigitalWalletType = "CONTACT_NAME"
	EMAIL       EnergyPaymentScheduleDigitalWalletType = "EMAIL"
	TELEPHONE   EnergyPaymentScheduleDigitalWalletType = "TELEPHONE"
)

Defines values for EnergyPaymentScheduleDigitalWalletType.

type EnergyPaymentScheduleDirectDebitCalculationType

type EnergyPaymentScheduleDirectDebitCalculationType string

The mechanism by which the payment amount is calculated. Explanation of values are as follows:<br/><ul><li>**STATIC** - Indicates a consistent, static amount, per payment</li><li>**BALANCE** - Indicates that the outstanding balance for the account is paid per period</li><li>**CALCULATED** - Indicates that the payment amount is variable and calculated using a pre-defined algorithm</li></ul>

Defines values for EnergyPaymentScheduleDirectDebitCalculationType.

type EnergyPaymentSchedulePaymentScheduleUType

type EnergyPaymentSchedulePaymentScheduleUType string

The type of object present in this response

const (
	CardDebit     EnergyPaymentSchedulePaymentScheduleUType = "cardDebit"
	DigitalWallet EnergyPaymentSchedulePaymentScheduleUType = "digitalWallet"
	DirectDebit   EnergyPaymentSchedulePaymentScheduleUType = "directDebit"
	ManualPayment EnergyPaymentSchedulePaymentScheduleUType = "manualPayment"
)

Defines values for EnergyPaymentSchedulePaymentScheduleUType.

type EnergyPaymentScheduleResponse

type EnergyPaymentScheduleResponse struct {
	Data struct {
		// Array may be empty if no payment schedule exist
		PaymentSchedules []EnergyPaymentSchedule `json:"paymentSchedules"`
	} `json:"data"`
	Links Links `json:"links"`
	Meta  Meta  `json:"meta"`
}

EnergyPaymentScheduleResponse defines model for EnergyPaymentScheduleResponse.

type EnergyPlan

type EnergyPlan struct {
	// Object that contains links to additional information on specific topics
	AdditionalInformation *struct {
		// A link to detail on bundles that this plan can be a part of
		BundleUri *string `json:"bundleUri,omitempty"`

		// A link to detail on eligibility criteria for the plan
		EligibilityUri *string `json:"eligibilityUri,omitempty"`

		// A link to a general overview of the plan
		OverviewUri *string `json:"overviewUri,omitempty"`

		// A link to detail on pricing for the plan
		PricingUri *string `json:"pricingUri,omitempty"`

		// A link to terms and conditions for the plan
		TermsUri *string `json:"termsUri,omitempty"`
	} `json:"additionalInformation,omitempty"`

	// A link to an application web page where this plan can be applied for
	ApplicationUri *string `json:"applicationUri,omitempty"`

	// The ID of the brand under which this plan is offered
	Brand string `json:"brand"`

	// The display name of the brand under which this plan is offered
	BrandName string `json:"brandName"`

	// The type of customer that the plan is offered to.  If absent then the plan is available to all customers
	CustomerType *EnergyPlanCustomerType `json:"customerType,omitempty"`

	// A description of the plan
	Description *string `json:"description,omitempty"`

	// The display name of the plan
	DisplayName *string `json:"displayName,omitempty"`

	// The date and time from which this plan is effective (ie. is available for origination). Used to enable the articulation of products to the regime before they are available for customers to originate
	EffectiveFrom *string `json:"effectiveFrom,omitempty"`

	// The date and time at which this plan will be retired and will no longer be offered. Used to enable the managed deprecation of plans
	EffectiveTo *string `json:"effectiveTo,omitempty"`

	// The fuel types covered by the plan
	FuelType EnergyPlanFuelType `json:"fuelType"`

	// Describes the geographical area that the plan is available for.  If absent then it is assumed the plan is not geographically limited
	Geography *struct {
		// Array of distributors for the plan. Must have at least one entry
		Distributors []string `json:"distributors"`

		// Array of valid Australian post codes that are specifically excluded from the plan.  Each element is a single four digit postcode (e.g. 3000) or a range of postcodes defined by two four digit postcodes and a hyphen (e.g. 3000-3999)
		ExcludedPostcodes *[]string `json:"excludedPostcodes,omitempty"`

		// Array of valid Australian post codes that are included from the plan.  If absent defaults to all non-excluded post codes.  Each element is a single four digit postcode (e.g. 3000) or a range of postcodes defined by two four digit postcodes and a hyphen (e.g. 3000-3999)
		IncludedPostcodes *[]string `json:"includedPostcodes,omitempty"`
	} `json:"geography,omitempty"`

	// The last date and time that the information for this plan was changed (or the creation date for the plan if it has never been altered)
	LastUpdated string `json:"lastUpdated"`

	// The ID of the specific plan
	PlanId string `json:"planId"`

	// The type of the plan
	Type EnergyPlanType `json:"type"`
}

EnergyPlan defines model for EnergyPlan.

type EnergyPlanContract

type EnergyPlanContract struct {
	// Free text field containing additional information of the fees for this contract
	AdditionalFeeInformation *string `json:"additionalFeeInformation,omitempty"`

	// Required if pricing model is SINGLE_RATE_CONT_LOAD or TIME_OF_USE_CONT_LOAD or FLEXIBLE_CONT_LOAD
	ControlledLoad *EnergyPlanControlledLoad `json:"controlledLoad,omitempty"`

	// Optional list of discounts available for the contract
	Discounts *EnergyPlanDiscounts `json:"discounts,omitempty"`

	// Eligibility restrictions or requirements
	Eligibility *EnergyPlanEligibility `json:"eligibility,omitempty"`

	// An array of fees applicable to the plan
	Fees *EnergyPlanFees `json:"fees,omitempty"`

	// Optional list of charges applicable to green power
	GreenPowerCharges *EnergyPlanGreenPowerCharges `json:"greenPowerCharges,omitempty"`

	// Optional list of incentives available for the contract
	Incentives *EnergyPlanIncentives `json:"incentives,omitempty"`

	// Describes intrinsic green power for the plan.  If present then the plan includes a percentage of green power in the base plan. Should not be present for gas contracts
	IntrinsicGreenPower *struct {
		// Percentage of green power intrinsically included in the plan
		GreenPercentage string `json:"greenPercentage"`
	} `json:"intrinsicGreenPower,omitempty"`

	// Flag indicating whether prices are fixed or variable
	IsFixed bool `json:"isFixed"`

	// Free text field that describes what will occur on or prior to expiry of the fixed contract term or benefit period
	OnExpiryDescription *string `json:"onExpiryDescription,omitempty"`

	// Payment options for this contract
	PaymentOption []EnergyPlanContractPaymentOption `json:"paymentOption"`

	// The pricing model for the contract.  Contracts for gas must use SINGLE_RATE.  Note that the detail for the enumeration values are:<ul><li>**SINGLE_RATE** - all energy usage is charged at a single unit rate no matter when it is consumed. Multiple unit rates may exist that correspond to varying volumes of usage i.e. a ‘block’ or ‘step’ tariff (first 50kWh @ X cents, next 50kWh at Y cents etc.</li><li>**SINGLE_RATE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**TIME_OF_USE** - energy usage is charged at unit rates that vary dependent on time of day and day of week that the energy is consumed</li><li>**TIME_OF_USE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**FLEXIBLE** - energy usage is charged at unit rates that vary based on external factors</li><li>**FLEXIBLE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**QUOTA** - all energy usage is charged at a single fixed rate, up to a specified usage quota/allowance. All excess usage beyond the allowance is then charged at a single unit rate (may not be the best way to explain it but it is essentially a ‘subscription’ or telco style product i.e. $50/month for up to 150kWh included usage</li></ul>
	PricingModel EnergyPlanContractPricingModel `json:"pricingModel"`

	// Array of feed in tariffs for solar power
	SolarFeedInTariff *EnergyPlanSolarFeedInTariff `json:"solarFeedInTariff,omitempty"`

	// Array of tariff periods
	TariffPeriod EnergyPlanTariffPeriod `json:"tariffPeriod"`

	// Required if pricingModel is set to TIME_OF_USE.  Defines the time zone to use for calculation of the time of use thresholds. Defaults to AEST if absent
	TimeZone *EnergyPlanContractTimeZone `json:"timeZone,omitempty"`

	// Free text description of price variation policy and conditions for the contract.  Mandatory if `isFixed` is false
	Variation *string `json:"variation,omitempty"`
}

EnergyPlanContract defines model for EnergyPlanContract.

type EnergyPlanContractFull

type EnergyPlanContractFull struct {
	// Free text field containing additional information of the fees for this contract
	AdditionalFeeInformation *string `json:"additionalFeeInformation,omitempty"`

	// Description of the benefit period.  Should only be present if termType has the value ONGOING
	BenefitPeriod *string `json:"benefitPeriod,omitempty"`

	// An array of the available billing schedules for this contract. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
	BillFrequency []string `json:"billFrequency"`

	// Required if pricing model is SINGLE_RATE_CONT_LOAD or TIME_OF_USE_CONT_LOAD or FLEXIBLE_CONT_LOAD
	ControlledLoad *EnergyPlanControlledLoad `json:"controlledLoad,omitempty"`

	// Number of days in the cooling off period for the contract.  Mandatory for plans with type of MARKET
	CoolingOffDays *int `json:"coolingOffDays,omitempty"`

	// Optional list of discounts available for the contract
	Discounts *EnergyPlanDiscounts `json:"discounts,omitempty"`

	// Eligibility restrictions or requirements
	Eligibility *EnergyPlanEligibility `json:"eligibility,omitempty"`

	// An array of fees applicable to the plan
	Fees *EnergyPlanFees `json:"fees,omitempty"`

	// Optional list of charges applicable to green power
	GreenPowerCharges *EnergyPlanGreenPowerCharges `json:"greenPowerCharges,omitempty"`

	// Optional list of incentives available for the contract
	Incentives *EnergyPlanIncentives `json:"incentives,omitempty"`

	// Describes intrinsic green power for the plan.  If present then the plan includes a percentage of green power in the base plan. Should not be present for gas contracts
	IntrinsicGreenPower *struct {
		// Percentage of green power intrinsically included in the plan
		GreenPercentage string `json:"greenPercentage"`
	} `json:"intrinsicGreenPower,omitempty"`

	// Flag indicating whether prices are fixed or variable
	IsFixed bool `json:"isFixed"`

	// An array of the meter types that this contract is available for
	MeterTypes *[]string `json:"meterTypes,omitempty"`

	// Free text field that describes what will occur on or prior to expiry of the fixed contract term or benefit period
	OnExpiryDescription *string `json:"onExpiryDescription,omitempty"`

	// Payment options for this contract
	PaymentOption []EnergyPlanContractFullPaymentOption `json:"paymentOption"`

	// The pricing model for the contract.  Contracts for gas must use SINGLE_RATE.  Note that the detail for the enumeration values are:<ul><li>**SINGLE_RATE** - all energy usage is charged at a single unit rate no matter when it is consumed. Multiple unit rates may exist that correspond to varying volumes of usage i.e. a ‘block’ or ‘step’ tariff (first 50kWh @ X cents, next 50kWh at Y cents etc.</li><li>**SINGLE_RATE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**TIME_OF_USE** - energy usage is charged at unit rates that vary dependent on time of day and day of week that the energy is consumed</li><li>**TIME_OF_USE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**FLEXIBLE** - energy usage is charged at unit rates that vary based on external factors</li><li>**FLEXIBLE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**QUOTA** - all energy usage is charged at a single fixed rate, up to a specified usage quota/allowance. All excess usage beyond the allowance is then charged at a single unit rate (may not be the best way to explain it but it is essentially a ‘subscription’ or telco style product i.e. $50/month for up to 150kWh included usage</li></ul>
	PricingModel EnergyPlanContractFullPricingModel `json:"pricingModel"`

	// Array of feed in tariffs for solar power
	SolarFeedInTariff *EnergyPlanSolarFeedInTariff `json:"solarFeedInTariff,omitempty"`

	// Array of tariff periods
	TariffPeriod EnergyPlanTariffPeriod `json:"tariffPeriod"`

	// The term for the contract.  If absent assumes no specified term
	TermType *EnergyPlanContractFullTermType `json:"termType,omitempty"`

	// Free text description of the terms for the contract
	Terms *string `json:"terms,omitempty"`

	// Required if pricingModel is set to TIME_OF_USE.  Defines the time zone to use for calculation of the time of use thresholds. Defaults to AEST if absent
	TimeZone *EnergyPlanContractFullTimeZone `json:"timeZone,omitempty"`

	// Free text description of price variation policy and conditions for the contract.  Mandatory if `isFixed` is false
	Variation *string `json:"variation,omitempty"`
}

EnergyPlanContractFull defines model for EnergyPlanContractFull.

type EnergyPlanContractFullPaymentOption

type EnergyPlanContractFullPaymentOption string

EnergyPlanContractFullPaymentOption defines model for EnergyPlanContractFull.PaymentOption.

const (
	EnergyPlanContractFullPaymentOptionBPAY        EnergyPlanContractFullPaymentOption = "BPAY"
	EnergyPlanContractFullPaymentOptionCREDITCARD  EnergyPlanContractFullPaymentOption = "CREDIT_CARD"
	EnergyPlanContractFullPaymentOptionDIRECTDEBIT EnergyPlanContractFullPaymentOption = "DIRECT_DEBIT"
	EnergyPlanContractFullPaymentOptionOTHER       EnergyPlanContractFullPaymentOption = "OTHER"
	EnergyPlanContractFullPaymentOptionPAPERBILL   EnergyPlanContractFullPaymentOption = "PAPER_BILL"
)

Defines values for EnergyPlanContractFullPaymentOption.

type EnergyPlanContractFullPricingModel

type EnergyPlanContractFullPricingModel string

The pricing model for the contract. Contracts for gas must use SINGLE_RATE. Note that the detail for the enumeration values are:<ul><li>**SINGLE_RATE** - all energy usage is charged at a single unit rate no matter when it is consumed. Multiple unit rates may exist that correspond to varying volumes of usage i.e. a ‘block’ or ‘step’ tariff (first 50kWh @ X cents, next 50kWh at Y cents etc.</li><li>**SINGLE_RATE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**TIME_OF_USE** - energy usage is charged at unit rates that vary dependent on time of day and day of week that the energy is consumed</li><li>**TIME_OF_USE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**FLEXIBLE** - energy usage is charged at unit rates that vary based on external factors</li><li>**FLEXIBLE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**QUOTA** - all energy usage is charged at a single fixed rate, up to a specified usage quota/allowance. All excess usage beyond the allowance is then charged at a single unit rate (may not be the best way to explain it but it is essentially a ‘subscription’ or telco style product i.e. $50/month for up to 150kWh included usage</li></ul>

const (
	EnergyPlanContractFullPricingModelFLEXIBLE           EnergyPlanContractFullPricingModel = "FLEXIBLE"
	EnergyPlanContractFullPricingModelFLEXIBLECONTLOAD   EnergyPlanContractFullPricingModel = "FLEXIBLE_CONT_LOAD"
	EnergyPlanContractFullPricingModelQUOTA              EnergyPlanContractFullPricingModel = "QUOTA"
	EnergyPlanContractFullPricingModelSINGLERATE         EnergyPlanContractFullPricingModel = "SINGLE_RATE"
	EnergyPlanContractFullPricingModelSINGLERATECONTLOAD EnergyPlanContractFullPricingModel = "SINGLE_RATE_CONT_LOAD"
	EnergyPlanContractFullPricingModelTIMEOFUSE          EnergyPlanContractFullPricingModel = "TIME_OF_USE"
	EnergyPlanContractFullPricingModelTIMEOFUSECONTLOAD  EnergyPlanContractFullPricingModel = "TIME_OF_USE_CONT_LOAD"
)

Defines values for EnergyPlanContractFullPricingModel.

type EnergyPlanContractFullTermType

type EnergyPlanContractFullTermType string

The term for the contract. If absent assumes no specified term

const (
	EnergyPlanContractFullTermTypeN1YEAR  EnergyPlanContractFullTermType = "1_YEAR"
	EnergyPlanContractFullTermTypeN2YEAR  EnergyPlanContractFullTermType = "2_YEAR"
	EnergyPlanContractFullTermTypeN3YEAR  EnergyPlanContractFullTermType = "3_YEAR"
	EnergyPlanContractFullTermTypeN4YEAR  EnergyPlanContractFullTermType = "4_YEAR"
	EnergyPlanContractFullTermTypeN5YEAR  EnergyPlanContractFullTermType = "5_YEAR"
	EnergyPlanContractFullTermTypeONGOING EnergyPlanContractFullTermType = "ONGOING"
	EnergyPlanContractFullTermTypeOTHER   EnergyPlanContractFullTermType = "OTHER"
)

Defines values for EnergyPlanContractFullTermType.

type EnergyPlanContractFullTimeZone

type EnergyPlanContractFullTimeZone string

Required if pricingModel is set to TIME_OF_USE. Defines the time zone to use for calculation of the time of use thresholds. Defaults to AEST if absent

const (
	EnergyPlanContractFullTimeZoneAEST  EnergyPlanContractFullTimeZone = "AEST"
	EnergyPlanContractFullTimeZoneLOCAL EnergyPlanContractFullTimeZone = "LOCAL"
)

Defines values for EnergyPlanContractFullTimeZone.

type EnergyPlanContractPaymentOption

type EnergyPlanContractPaymentOption string

EnergyPlanContractPaymentOption defines model for EnergyPlanContract.PaymentOption.

const (
	EnergyPlanContractPaymentOptionBPAY        EnergyPlanContractPaymentOption = "BPAY"
	EnergyPlanContractPaymentOptionCREDITCARD  EnergyPlanContractPaymentOption = "CREDIT_CARD"
	EnergyPlanContractPaymentOptionDIRECTDEBIT EnergyPlanContractPaymentOption = "DIRECT_DEBIT"
	EnergyPlanContractPaymentOptionOTHER       EnergyPlanContractPaymentOption = "OTHER"
	EnergyPlanContractPaymentOptionPAPERBILL   EnergyPlanContractPaymentOption = "PAPER_BILL"
)

Defines values for EnergyPlanContractPaymentOption.

type EnergyPlanContractPricingModel

type EnergyPlanContractPricingModel string

The pricing model for the contract. Contracts for gas must use SINGLE_RATE. Note that the detail for the enumeration values are:<ul><li>**SINGLE_RATE** - all energy usage is charged at a single unit rate no matter when it is consumed. Multiple unit rates may exist that correspond to varying volumes of usage i.e. a ‘block’ or ‘step’ tariff (first 50kWh @ X cents, next 50kWh at Y cents etc.</li><li>**SINGLE_RATE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**TIME_OF_USE** - energy usage is charged at unit rates that vary dependent on time of day and day of week that the energy is consumed</li><li>**TIME_OF_USE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**FLEXIBLE** - energy usage is charged at unit rates that vary based on external factors</li><li>**FLEXIBLE_CONT_LOAD** - as above, but with an additional, separate unit rate charged for all energy usage from a controlled load i.e. separately metered appliance like hot water service, pool pump etc.</li><li>**QUOTA** - all energy usage is charged at a single fixed rate, up to a specified usage quota/allowance. All excess usage beyond the allowance is then charged at a single unit rate (may not be the best way to explain it but it is essentially a ‘subscription’ or telco style product i.e. $50/month for up to 150kWh included usage</li></ul>

const (
	EnergyPlanContractPricingModelFLEXIBLE           EnergyPlanContractPricingModel = "FLEXIBLE"
	EnergyPlanContractPricingModelFLEXIBLECONTLOAD   EnergyPlanContractPricingModel = "FLEXIBLE_CONT_LOAD"
	EnergyPlanContractPricingModelQUOTA              EnergyPlanContractPricingModel = "QUOTA"
	EnergyPlanContractPricingModelSINGLERATE         EnergyPlanContractPricingModel = "SINGLE_RATE"
	EnergyPlanContractPricingModelSINGLERATECONTLOAD EnergyPlanContractPricingModel = "SINGLE_RATE_CONT_LOAD"
	EnergyPlanContractPricingModelTIMEOFUSE          EnergyPlanContractPricingModel = "TIME_OF_USE"
	EnergyPlanContractPricingModelTIMEOFUSECONTLOAD  EnergyPlanContractPricingModel = "TIME_OF_USE_CONT_LOAD"
)

Defines values for EnergyPlanContractPricingModel.

type EnergyPlanContractTimeZone

type EnergyPlanContractTimeZone string

Required if pricingModel is set to TIME_OF_USE. Defines the time zone to use for calculation of the time of use thresholds. Defaults to AEST if absent

const (
	EnergyPlanContractTimeZoneAEST  EnergyPlanContractTimeZone = "AEST"
	EnergyPlanContractTimeZoneLOCAL EnergyPlanContractTimeZone = "LOCAL"
)

Defines values for EnergyPlanContractTimeZone.

type EnergyPlanControlledLoad

type EnergyPlanControlledLoad = []struct {
	// A display name for the controlled load
	DisplayName string `json:"displayName"`

	// Optional end date of the application of the controlled load rate
	EndDate *string `json:"endDate,omitempty"`

	// Specifies the type of controlloed load rate
	RateBlockUType EnergyPlanControlledLoadRateBlockUType `json:"rateBlockUType"`

	// Object representing a single controlled load rate.  Required if rateBlockUType is singleRate
	SingleRate *struct {
		// The daily supply charge (exclusive of GST) for this controlled load tier
		DailySupplyCharge *string `json:"dailySupplyCharge,omitempty"`

		// Description of the controlled load rate
		Description *string `json:"description,omitempty"`

		// Display name of the controlled load rate
		DisplayName string `json:"displayName"`

		// Array of controlled load rates in order of usage volume
		Rates []struct {
			// The measurement unit of rate. Assumed to be KWH if absent
			MeasureUnit *EnergyPlanControlledLoadSingleRateRatesMeasureUnit `json:"measureUnit,omitempty"`

			// Unit price of usage per  measure unit (exclusive of GST)
			UnitPrice string `json:"unitPrice"`

			// Volume in kWh that this rate applies to.  Only applicable for ‘stepped’ rates where different rates apply for different volumes of usage in a period
			Volume *float32 `json:"volume,omitempty"`
		} `json:"rates"`
	} `json:"singleRate,omitempty"`

	// Optional start date of the application of the controlled load rate
	StartDate *string `json:"startDate,omitempty"`

	// Array of objects representing time of use rates.  Required if rateBlockUType is timeOfUseRates
	TimeOfUseRates *[]struct {
		// The daily supply charge (exclusive of GST) for this controlled load tier
		DailySupplyCharge *string `json:"dailySupplyCharge,omitempty"`

		// Description of the controlled load rate
		Description *string `json:"description,omitempty"`

		// Display name of the controlled load rate
		DisplayName string `json:"displayName"`

		// Array of controlled load rates in order of usage volume
		Rates []struct {
			// The measurement unit of rate. Assumed to be KWH if absent
			MeasureUnit *EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit `json:"measureUnit,omitempty"`

			// Unit price of usage per  measure unit (exclusive of GST)
			UnitPrice string `json:"unitPrice"`

			// Volume in kWh that this rate applies to.  Only applicable for ‘stepped’ rates where different rates apply for different volumes of usage in a period
			Volume *float32 `json:"volume,omitempty"`
		} `json:"rates"`

		// Array of times of use.
		TimeOfUse []struct {
			// Display text providing more information on the contrlled load, for e.g. controlled load availability if specific day/time is not known. Required if startTime and endTime absent or if additionalInfoUri provided
			AdditionalInfo *string `json:"additionalInfo,omitempty"`

			// Optional link to additional information regarding the controlled load
			AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

			// The days that the rate applies to
			Days *[]EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays `json:"days,omitempty"`

			// The end of the time period per day for which the controlled load rate applies. Required if startTime provided
			EndTime *string `json:"endTime,omitempty"`

			// The beginning of the time period per day for which the controlled load rate applies. Required if endTime provided
			StartTime *string `json:"startTime,omitempty"`
		} `json:"timeOfUse"`

		// The type of usage that the rate applies to
		Type EnergyPlanControlledLoadTimeOfUseRatesType `json:"type"`
	} `json:"timeOfUseRates,omitempty"`
}

Required if pricing model is SINGLE_RATE_CONT_LOAD or TIME_OF_USE_CONT_LOAD or FLEXIBLE_CONT_LOAD

type EnergyPlanControlledLoadRateBlockUType

type EnergyPlanControlledLoadRateBlockUType string

Specifies the type of controlloed load rate

const (
	EnergyPlanControlledLoadRateBlockUTypeSingleRate     EnergyPlanControlledLoadRateBlockUType = "singleRate"
	EnergyPlanControlledLoadRateBlockUTypeTimeOfUseRates EnergyPlanControlledLoadRateBlockUType = "timeOfUseRates"
)

Defines values for EnergyPlanControlledLoadRateBlockUType.

type EnergyPlanControlledLoadSingleRateRatesMeasureUnit

type EnergyPlanControlledLoadSingleRateRatesMeasureUnit string

The measurement unit of rate. Assumed to be KWH if absent

const (
	EnergyPlanControlledLoadSingleRateRatesMeasureUnitDAYS  EnergyPlanControlledLoadSingleRateRatesMeasureUnit = "DAYS"
	EnergyPlanControlledLoadSingleRateRatesMeasureUnitKVA   EnergyPlanControlledLoadSingleRateRatesMeasureUnit = "KVA"
	EnergyPlanControlledLoadSingleRateRatesMeasureUnitKVAR  EnergyPlanControlledLoadSingleRateRatesMeasureUnit = "KVAR"
	EnergyPlanControlledLoadSingleRateRatesMeasureUnitKVARH EnergyPlanControlledLoadSingleRateRatesMeasureUnit = "KVARH"
	EnergyPlanControlledLoadSingleRateRatesMeasureUnitKW    EnergyPlanControlledLoadSingleRateRatesMeasureUnit = "KW"
	EnergyPlanControlledLoadSingleRateRatesMeasureUnitKWH   EnergyPlanControlledLoadSingleRateRatesMeasureUnit = "KWH"
	EnergyPlanControlledLoadSingleRateRatesMeasureUnitMETER EnergyPlanControlledLoadSingleRateRatesMeasureUnit = "METER"
	EnergyPlanControlledLoadSingleRateRatesMeasureUnitMONTH EnergyPlanControlledLoadSingleRateRatesMeasureUnit = "MONTH"
)

Defines values for EnergyPlanControlledLoadSingleRateRatesMeasureUnit.

type EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit

type EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit string

The measurement unit of rate. Assumed to be KWH if absent

const (
	EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnitDAYS  EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit = "DAYS"
	EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnitKVA   EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit = "KVA"
	EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnitKVAR  EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit = "KVAR"
	EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnitKVARH EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit = "KVARH"
	EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnitKW    EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit = "KW"
	EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnitKWH   EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit = "KWH"
	EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnitMETER EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit = "METER"
	EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnitMONTH EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit = "MONTH"
)

Defines values for EnergyPlanControlledLoadTimeOfUseRatesRatesMeasureUnit.

type EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays

type EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays string

EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays defines model for EnergyPlanControlledLoad.TimeOfUseRates.TimeOfUse.Days.

const (
	EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDaysFRI            EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays = "FRI"
	EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDaysMON            EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays = "MON"
	EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDaysPUBLICHOLIDAYS EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays = "PUBLIC_HOLIDAYS"
	EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDaysSAT            EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays = "SAT"
	EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDaysSUN            EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays = "SUN"
	EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDaysTHU            EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays = "THU"
	EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDaysTUE            EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays = "TUE"
	EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDaysWED            EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays = "WED"
)

Defines values for EnergyPlanControlledLoadTimeOfUseRatesTimeOfUseDays.

type EnergyPlanControlledLoadTimeOfUseRatesType

type EnergyPlanControlledLoadTimeOfUseRatesType string

The type of usage that the rate applies to

const (
	EnergyPlanControlledLoadTimeOfUseRatesTypeOFFPEAK     EnergyPlanControlledLoadTimeOfUseRatesType = "OFF_PEAK"
	EnergyPlanControlledLoadTimeOfUseRatesTypePEAK        EnergyPlanControlledLoadTimeOfUseRatesType = "PEAK"
	EnergyPlanControlledLoadTimeOfUseRatesTypeSHOULDER    EnergyPlanControlledLoadTimeOfUseRatesType = "SHOULDER"
	EnergyPlanControlledLoadTimeOfUseRatesTypeSOLARSPONGE EnergyPlanControlledLoadTimeOfUseRatesType = "SOLAR_SPONGE"
)

Defines values for EnergyPlanControlledLoadTimeOfUseRatesType.

type EnergyPlanCustomerType

type EnergyPlanCustomerType string

The type of customer that the plan is offered to. If absent then the plan is available to all customers

const (
	EnergyPlanCustomerTypeBUSINESS    EnergyPlanCustomerType = "BUSINESS"
	EnergyPlanCustomerTypeRESIDENTIAL EnergyPlanCustomerType = "RESIDENTIAL"
)

Defines values for EnergyPlanCustomerType.

type EnergyPlanDetail

type EnergyPlanDetail struct {
	// Object that contains links to additional information on specific topics
	AdditionalInformation *struct {
		// A link to detail on bundles that this plan can be a part of
		BundleUri *string `json:"bundleUri,omitempty"`

		// A link to detail on eligibility criteria for the plan
		EligibilityUri *string `json:"eligibilityUri,omitempty"`

		// A link to a general overview of the plan
		OverviewUri *string `json:"overviewUri,omitempty"`

		// A link to detail on pricing for the plan
		PricingUri *string `json:"pricingUri,omitempty"`

		// A link to terms and conditions for the plan
		TermsUri *string `json:"termsUri,omitempty"`
	} `json:"additionalInformation,omitempty"`

	// A link to an application web page where this plan can be applied for
	ApplicationUri *string `json:"applicationUri,omitempty"`

	// The ID of the brand under which this plan is offered
	Brand string `json:"brand"`

	// The display name of the brand under which this plan is offered
	BrandName string `json:"brandName"`

	// The type of customer that the plan is offered to.  If absent then the plan is available to all customers
	CustomerType *EnergyPlanDetailCustomerType `json:"customerType,omitempty"`

	// A description of the plan
	Description *string `json:"description,omitempty"`

	// The display name of the plan
	DisplayName *string `json:"displayName,omitempty"`

	// The date and time from which this plan is effective (ie. is available for origination). Used to enable the articulation of products to the regime before they are available for customers to originate
	EffectiveFrom *string `json:"effectiveFrom,omitempty"`

	// The date and time at which this plan will be retired and will no longer be offered. Used to enable the managed deprecation of plans
	EffectiveTo         *string                 `json:"effectiveTo,omitempty"`
	ElectricityContract *EnergyPlanContractFull `json:"electricityContract,omitempty"`

	// The fuel types covered by the plan
	FuelType    EnergyPlanDetailFuelType `json:"fuelType"`
	GasContract *EnergyPlanContractFull  `json:"gasContract,omitempty"`

	// Describes the geographical area that the plan is available for.  If absent then it is assumed the plan is not geographically limited
	Geography *struct {
		// Array of distributors for the plan. Must have at least one entry
		Distributors []string `json:"distributors"`

		// Array of valid Australian post codes that are specifically excluded from the plan.  Each element is a single four digit postcode (e.g. 3000) or a range of postcodes defined by two four digit postcodes and a hyphen (e.g. 3000-3999)
		ExcludedPostcodes *[]string `json:"excludedPostcodes,omitempty"`

		// Array of valid Australian post codes that are included from the plan.  If absent defaults to all non-excluded post codes.  Each element is a single four digit postcode (e.g. 3000) or a range of postcodes defined by two four digit postcodes and a hyphen (e.g. 3000-3999)
		IncludedPostcodes *[]string `json:"includedPostcodes,omitempty"`
	} `json:"geography,omitempty"`

	// The last date and time that the information for this plan was changed (or the creation date for the plan if it has never been altered)
	LastUpdated string `json:"lastUpdated"`

	// Charges for metering included in the plan
	MeteringCharges *[]struct {
		// Description of the charge
		Description *string `json:"description,omitempty"`

		// Display name of the charge
		DisplayName string `json:"displayName"`

		// The upper limit of the charge if the charge could occur in a range
		MaximumValue *string `json:"maximumValue,omitempty"`

		// Minimum value of the charge if the charge is a range or the absolute value of the charge if no range is specified
		MinimumValue string `json:"minimumValue"`

		// The charges that occur on a schedule indicates the frequency. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
		Period *string `json:"period,omitempty"`
	} `json:"meteringCharges,omitempty"`

	// The ID of the specific plan
	PlanId string `json:"planId"`

	// The type of the plan
	Type EnergyPlanDetailType `json:"type"`
}

EnergyPlanDetail defines model for EnergyPlanDetail.

type EnergyPlanDetailCustomerType

type EnergyPlanDetailCustomerType string

The type of customer that the plan is offered to. If absent then the plan is available to all customers

const (
	EnergyPlanDetailCustomerTypeBUSINESS    EnergyPlanDetailCustomerType = "BUSINESS"
	EnergyPlanDetailCustomerTypeRESIDENTIAL EnergyPlanDetailCustomerType = "RESIDENTIAL"
)

Defines values for EnergyPlanDetailCustomerType.

type EnergyPlanDetailFuelType

type EnergyPlanDetailFuelType string

The fuel types covered by the plan

const (
	DUAL        EnergyPlanDetailFuelType = "DUAL"
	ELECTRICITY EnergyPlanDetailFuelType = "ELECTRICITY"
	GAS         EnergyPlanDetailFuelType = "GAS"
)

Defines values for EnergyPlanDetailFuelType.

type EnergyPlanDetailType

type EnergyPlanDetailType string

The type of the plan

const (
	EnergyPlanDetailTypeMARKET    EnergyPlanDetailType = "MARKET"
	EnergyPlanDetailTypeREGULATED EnergyPlanDetailType = "REGULATED"
	EnergyPlanDetailTypeSTANDING  EnergyPlanDetailType = "STANDING"
)

Defines values for EnergyPlanDetailType.

type EnergyPlanDiscounts

type EnergyPlanDiscounts = []struct {
	// The type of the discount.  Mandatory if the discount type is CONDITIONAL
	Category *EnergyPlanDiscountsCategory `json:"category,omitempty"`

	// The description of the discount
	Description *string `json:"description,omitempty"`

	// The display name of the discount
	DisplayName string `json:"displayName"`

	// Optional end date for the discount after which the discount is no longer available
	EndDate *string `json:"endDate,omitempty"`

	// Required if methodUType is fixedAmount
	FixedAmount *struct {
		// The amount of the discount
		Amount string `json:"amount"`
	} `json:"fixedAmount,omitempty"`

	// The method of calculation of the discount
	MethodUType EnergyPlanDiscountsMethodUType `json:"methodUType"`

	// Required if methodUType is percentOfBill
	PercentOfBill *struct {
		// The rate of the discount applied to the bill amount
		Rate string `json:"rate"`
	} `json:"percentOfBill,omitempty"`

	// Required if methodUType is percentOfUse
	PercentOfUse *struct {
		// The rate of the discount applied to the usageamount
		Rate string `json:"rate"`
	} `json:"percentOfUse,omitempty"`

	// Required if methodUType is percentOverThreshold
	PercentOverThreshold *struct {
		// The rate of the discount over the usage amount
		Rate string `json:"rate"`

		// The usage amount threshold above which the discount applies
		UsageAmount string `json:"usageAmount"`
	} `json:"percentOverThreshold,omitempty"`

	// The type of the discount
	Type EnergyPlanDiscountsType `json:"type"`
}

Optional list of discounts available for the contract

type EnergyPlanDiscountsCategory

type EnergyPlanDiscountsCategory string

The type of the discount. Mandatory if the discount type is CONDITIONAL

const (
	EnergyPlanDiscountsCategoryDIRECTDEBIT        EnergyPlanDiscountsCategory = "DIRECT_DEBIT"
	EnergyPlanDiscountsCategoryGUARANTEEDDISCOUNT EnergyPlanDiscountsCategory = "GUARANTEED_DISCOUNT"
	EnergyPlanDiscountsCategoryOTHER              EnergyPlanDiscountsCategory = "OTHER"
	EnergyPlanDiscountsCategoryPAYONTIME          EnergyPlanDiscountsCategory = "PAY_ON_TIME"
)

Defines values for EnergyPlanDiscountsCategory.

type EnergyPlanDiscountsMethodUType

type EnergyPlanDiscountsMethodUType string

The method of calculation of the discount

const (
	FixedAmount          EnergyPlanDiscountsMethodUType = "fixedAmount"
	PercentOfBill        EnergyPlanDiscountsMethodUType = "percentOfBill"
	PercentOfUse         EnergyPlanDiscountsMethodUType = "percentOfUse"
	PercentOverThreshold EnergyPlanDiscountsMethodUType = "percentOverThreshold"
)

Defines values for EnergyPlanDiscountsMethodUType.

type EnergyPlanDiscountsType

type EnergyPlanDiscountsType string

The type of the discount

const (
	EnergyPlanDiscountsTypeCONDITIONAL EnergyPlanDiscountsType = "CONDITIONAL"
	EnergyPlanDiscountsTypeGUARANTEED  EnergyPlanDiscountsType = "GUARANTEED"
	EnergyPlanDiscountsTypeOTHER       EnergyPlanDiscountsType = "OTHER"
)

Defines values for EnergyPlanDiscountsType.

type EnergyPlanEligibility

type EnergyPlanEligibility = []struct {
	// A description of the eligibility restriction
	Description *string `json:"description,omitempty"`

	// Information of the eligibility restriction specific to the type of the restriction
	Information string `json:"information"`

	// The type of the eligibility restriction.<br/>The CONTINGENT_PLAN value indicates that the plan is contingent on the customer taking up an alternate fuel plan from the same retailer (for instance, if the fuelType is ELECTRICITY then a GAS plan from the same retailer must be taken up)
	Type EnergyPlanEligibilityType `json:"type"`
}

Eligibility restrictions or requirements

type EnergyPlanEligibilityType

type EnergyPlanEligibilityType string

The type of the eligibility restriction.<br/>The CONTINGENT_PLAN value indicates that the plan is contingent on the customer taking up an alternate fuel plan from the same retailer (for instance, if the fuelType is ELECTRICITY then a GAS plan from the same retailer must be taken up)

const (
	EnergyPlanEligibilityTypeCONTINGENTPLAN     EnergyPlanEligibilityType = "CONTINGENT_PLAN"
	EnergyPlanEligibilityTypeEXISTINGBASICMETER EnergyPlanEligibilityType = "EXISTING_BASIC_METER"
	EnergyPlanEligibilityTypeEXISTINGBATTERY    EnergyPlanEligibilityType = "EXISTING_BATTERY"
	EnergyPlanEligibilityTypeEXISTINGCUST       EnergyPlanEligibilityType = "EXISTING_CUST"
	EnergyPlanEligibilityTypeEXISTINGPOOL       EnergyPlanEligibilityType = "EXISTING_POOL"
	EnergyPlanEligibilityTypeEXISTINGSMARTMETER EnergyPlanEligibilityType = "EXISTING_SMART_METER"
	EnergyPlanEligibilityTypeEXISTINGSOLAR      EnergyPlanEligibilityType = "EXISTING_SOLAR"
	EnergyPlanEligibilityTypeGROUPBUYMEMBER     EnergyPlanEligibilityType = "GROUP_BUY_MEMBER"
	EnergyPlanEligibilityTypeLOYALTYMEMBER      EnergyPlanEligibilityType = "LOYALTY_MEMBER"
	EnergyPlanEligibilityTypeMINIMUMUSAGE       EnergyPlanEligibilityType = "MINIMUM_USAGE"
	EnergyPlanEligibilityTypeNEWCUSTOMER        EnergyPlanEligibilityType = "NEW_CUSTOMER"
	EnergyPlanEligibilityTypeNOSOLARFIT         EnergyPlanEligibilityType = "NO_SOLAR_FIT"
	EnergyPlanEligibilityTypeONLINEONLY         EnergyPlanEligibilityType = "ONLINE_ONLY"
	EnergyPlanEligibilityTypeORGMEMBER          EnergyPlanEligibilityType = "ORG_MEMBER"
	EnergyPlanEligibilityTypeOTHER              EnergyPlanEligibilityType = "OTHER"
	EnergyPlanEligibilityTypeREQEQUIPSUPPLIER   EnergyPlanEligibilityType = "REQ_EQUIP_SUPPLIER"
	EnergyPlanEligibilityTypeSENIORCARD         EnergyPlanEligibilityType = "SENIOR_CARD"
	EnergyPlanEligibilityTypeSMALLBUSINESS      EnergyPlanEligibilityType = "SMALL_BUSINESS"
	EnergyPlanEligibilityTypeSPECIFICLOCATION   EnergyPlanEligibilityType = "SPECIFIC_LOCATION"
	EnergyPlanEligibilityTypeSPORTCLUBMEMBER    EnergyPlanEligibilityType = "SPORT_CLUB_MEMBER"
	EnergyPlanEligibilityTypeTHIRDPARTYONLY     EnergyPlanEligibilityType = "THIRD_PARTY_ONLY"
)

Defines values for EnergyPlanEligibilityType.

type EnergyPlanFees

type EnergyPlanFees = []struct {
	// The fee amount. Required if term is not PERCENT_OF_BILL
	Amount *string `json:"amount,omitempty"`

	// A description of the fee
	Description *string `json:"description,omitempty"`

	// The fee rate. Required if term is PERCENT_OF_BILL
	Rate *string `json:"rate,omitempty"`

	// The term of the fee
	Term EnergyPlanFeesTerm `json:"term"`

	// The type of the fee
	Type EnergyPlanFeesType `json:"type"`
}

An array of fees applicable to the plan

type EnergyPlanFeesTerm

type EnergyPlanFeesTerm string

The term of the fee

const (
	EnergyPlanFeesTermANNUAL        EnergyPlanFeesTerm = "ANNUAL"
	EnergyPlanFeesTermBIANNUAL      EnergyPlanFeesTerm = "BIANNUAL"
	EnergyPlanFeesTermDAILY         EnergyPlanFeesTerm = "DAILY"
	EnergyPlanFeesTermFIXED         EnergyPlanFeesTerm = "FIXED"
	EnergyPlanFeesTermMONTHLY       EnergyPlanFeesTerm = "MONTHLY"
	EnergyPlanFeesTermN1YEAR        EnergyPlanFeesTerm = "1_YEAR"
	EnergyPlanFeesTermN2YEAR        EnergyPlanFeesTerm = "2_YEAR"
	EnergyPlanFeesTermN3YEAR        EnergyPlanFeesTerm = "3_YEAR"
	EnergyPlanFeesTermN4YEAR        EnergyPlanFeesTerm = "4_YEAR"
	EnergyPlanFeesTermN5YEAR        EnergyPlanFeesTerm = "5_YEAR"
	EnergyPlanFeesTermPERCENTOFBILL EnergyPlanFeesTerm = "PERCENT_OF_BILL"
	EnergyPlanFeesTermVARIABLE      EnergyPlanFeesTerm = "VARIABLE"
	EnergyPlanFeesTermWEEKLY        EnergyPlanFeesTerm = "WEEKLY"
)

Defines values for EnergyPlanFeesTerm.

type EnergyPlanFeesType

type EnergyPlanFeesType string

The type of the fee

const (
	EnergyPlanFeesTypeCCPROCESSING      EnergyPlanFeesType = "CC_PROCESSING"
	EnergyPlanFeesTypeCHEQUEDISHONOUR   EnergyPlanFeesType = "CHEQUE_DISHONOUR"
	EnergyPlanFeesTypeCONNECTION        EnergyPlanFeesType = "CONNECTION"
	EnergyPlanFeesTypeCONTRIBUTION      EnergyPlanFeesType = "CONTRIBUTION"
	EnergyPlanFeesTypeDDDISHONOUR       EnergyPlanFeesType = "DD_DISHONOUR"
	EnergyPlanFeesTypeDISCONNECTION     EnergyPlanFeesType = "DISCONNECTION"
	EnergyPlanFeesTypeDISCONNECTMOVEOUT EnergyPlanFeesType = "DISCONNECT_MOVE_OUT"
	EnergyPlanFeesTypeDISCONNECTNONPAY  EnergyPlanFeesType = "DISCONNECT_NON_PAY"
	EnergyPlanFeesTypeESTABLISHMENT     EnergyPlanFeesType = "ESTABLISHMENT"
	EnergyPlanFeesTypeEXIT              EnergyPlanFeesType = "EXIT"
	EnergyPlanFeesTypeLATEPAYMENT       EnergyPlanFeesType = "LATE_PAYMENT"
	EnergyPlanFeesTypeMEMBERSHIP        EnergyPlanFeesType = "MEMBERSHIP"
	EnergyPlanFeesTypeOTHER             EnergyPlanFeesType = "OTHER"
	EnergyPlanFeesTypePAPERBILL         EnergyPlanFeesType = "PAPER_BILL"
	EnergyPlanFeesTypePAYMENTPROCESSING EnergyPlanFeesType = "PAYMENT_PROCESSING"
	EnergyPlanFeesTypeRECONNECTION      EnergyPlanFeesType = "RECONNECTION"
)

Defines values for EnergyPlanFeesType.

type EnergyPlanFuelType

type EnergyPlanFuelType string

The fuel types covered by the plan

const (
	EnergyPlanFuelTypeDUAL        EnergyPlanFuelType = "DUAL"
	EnergyPlanFuelTypeELECTRICITY EnergyPlanFuelType = "ELECTRICITY"
	EnergyPlanFuelTypeGAS         EnergyPlanFuelType = "GAS"
)

Defines values for EnergyPlanFuelType.

type EnergyPlanGreenPowerCharges

type EnergyPlanGreenPowerCharges = []struct {
	// The description of the charge
	Description *string `json:"description,omitempty"`

	// The display name of the charge
	DisplayName string `json:"displayName"`

	// The applicable green power scheme
	Scheme EnergyPlanGreenPowerChargesScheme `json:"scheme"`

	// Array of charge tiers based on the percentage of green power used for the period implied by the type.  Array is in order of increasing percentage of green power
	Tiers []struct {
		// The amount of the charge if the type implies the application of a fixed amount
		Amount *string `json:"amount,omitempty"`

		// The upper percentage of green power used applicable for this tier
		PercentGreen string `json:"percentGreen"`

		// The rate of the charge if the type implies the application of a rate
		Rate *string `json:"rate,omitempty"`
	} `json:"tiers"`

	// The type of charge
	Type EnergyPlanGreenPowerChargesType `json:"type"`
}

Optional list of charges applicable to green power

type EnergyPlanGreenPowerChargesScheme

type EnergyPlanGreenPowerChargesScheme string

The applicable green power scheme

const (
	EnergyPlanGreenPowerChargesSchemeGREENPOWER EnergyPlanGreenPowerChargesScheme = "GREENPOWER"
	EnergyPlanGreenPowerChargesSchemeOTHER      EnergyPlanGreenPowerChargesScheme = "OTHER"
)

Defines values for EnergyPlanGreenPowerChargesScheme.

type EnergyPlanGreenPowerChargesType

type EnergyPlanGreenPowerChargesType string

The type of charge

const (
	FIXEDPERDAY   EnergyPlanGreenPowerChargesType = "FIXED_PER_DAY"
	FIXEDPERMONTH EnergyPlanGreenPowerChargesType = "FIXED_PER_MONTH"
	FIXEDPERUNIT  EnergyPlanGreenPowerChargesType = "FIXED_PER_UNIT"
	FIXEDPERWEEK  EnergyPlanGreenPowerChargesType = "FIXED_PER_WEEK"
	PERCENTOFBILL EnergyPlanGreenPowerChargesType = "PERCENT_OF_BILL"
	PERCENTOFUSE  EnergyPlanGreenPowerChargesType = "PERCENT_OF_USE"
)

Defines values for EnergyPlanGreenPowerChargesType.

type EnergyPlanIncentives

type EnergyPlanIncentives = []struct {
	// The type of the incentive
	Category EnergyPlanIncentivesCategory `json:"category"`

	// The description of the incentive
	Description string `json:"description"`

	// The display name of the incentive
	DisplayName string `json:"displayName"`

	// A display message outlining an eligibility criteria that may apply
	Eligibility *string `json:"eligibility,omitempty"`
}

Optional list of incentives available for the contract

type EnergyPlanIncentivesCategory

type EnergyPlanIncentivesCategory string

The type of the incentive

const (
	EnergyPlanIncentivesCategoryACCOUNTCREDIT EnergyPlanIncentivesCategory = "ACCOUNT_CREDIT"
	EnergyPlanIncentivesCategoryGIFT          EnergyPlanIncentivesCategory = "GIFT"
	EnergyPlanIncentivesCategoryOTHER         EnergyPlanIncentivesCategory = "OTHER"
)

Defines values for EnergyPlanIncentivesCategory.

type EnergyPlanListResponse

type EnergyPlanListResponse struct {
	Data struct {
		// Array of plans
		Plans []EnergyPlan `json:"plans"`
	} `json:"data"`
	Links LinksPaginated `json:"links"`
	Meta  MetaPaginated  `json:"meta"`
}

EnergyPlanListResponse defines model for EnergyPlanListResponse.

type EnergyPlanOverview added in v0.1.2

type EnergyPlanOverview struct {
	DisplayName *string `json:"displayName,omitempty" example:"Albert Wood"`            // The name of the plan if one exists
	EndDate     *string `json:"endDate,omitempty" example:"2007-05-01T15:43:00.12345Z"` // The end date of the applicability of this plan
	StartDate   string  `json:"startDate" example:"2007-05-01T15:43:00.12345Z"`         // The start date of the applicability of this plan
}

type EnergyPlanResponse

type EnergyPlanResponse struct {
	Data  EnergyPlanDetail `json:"data"`
	Links Links            `json:"links"`
	Meta  *Meta            `json:"meta,omitempty"`
}

EnergyPlanResponse defines model for EnergyPlanResponse.

type EnergyPlanSolarFeedInTariff

type EnergyPlanSolarFeedInTariff = []struct {
	// A description of the tariff
	Description *string `json:"description,omitempty"`

	// The name of the tariff
	DisplayName string `json:"displayName"`

	// The type of the payer
	PayerType EnergyPlanSolarFeedInTariffPayerType `json:"payerType"`

	// The applicable scheme
	Scheme EnergyPlanSolarFeedInTariffScheme `json:"scheme"`

	// Represents a constant tariff.  Mandatory if tariffUType is set to singleTariff
	SingleTariff *struct {
		// The tariff amount
		Amount string `json:"amount"`
	} `json:"singleTariff,omitempty"`

	// The type of the payer
	TariffUType EnergyPlanSolarFeedInTariffTariffUType `json:"tariffUType"`

	// Represents a tariff based on time.  Mandatory if tariffUType is set to timeVaryingTariffs
	TimeVaryingTariffs *struct {
		// The tariff amount
		Amount string `json:"amount"`

		// Array of time periods for which this tariff is applicable
		TimeVariations []struct {
			// The days that the tariff applies to. At least one entry required
			Days []EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays `json:"days"`

			// The end of the time period per day for which the tariff applies.  If absent assumes end of day (ie. one second before midnight)
			EndTime *string `json:"endTime,omitempty"`

			// The beginning of the time period per day for which the tariff applies.  If absent assumes start of day (ie. midnight)
			StartTime *string `json:"startTime,omitempty"`
		} `json:"timeVariations"`

		// The type of the charging time period. If absent applies to all periods
		Type *EnergyPlanSolarFeedInTariffTimeVaryingTariffsType `json:"type,omitempty"`
	} `json:"timeVaryingTariffs,omitempty"`
}

Array of feed in tariffs for solar power

type EnergyPlanSolarFeedInTariffPayerType

type EnergyPlanSolarFeedInTariffPayerType string

The type of the payer

const (
	GOVERNMENT EnergyPlanSolarFeedInTariffPayerType = "GOVERNMENT"
	RETAILER   EnergyPlanSolarFeedInTariffPayerType = "RETAILER"
)

Defines values for EnergyPlanSolarFeedInTariffPayerType.

type EnergyPlanSolarFeedInTariffScheme

type EnergyPlanSolarFeedInTariffScheme string

The applicable scheme

const (
	EnergyPlanSolarFeedInTariffSchemeOTHER   EnergyPlanSolarFeedInTariffScheme = "OTHER"
	EnergyPlanSolarFeedInTariffSchemePREMIUM EnergyPlanSolarFeedInTariffScheme = "PREMIUM"
)

Defines values for EnergyPlanSolarFeedInTariffScheme.

type EnergyPlanSolarFeedInTariffTariffUType

type EnergyPlanSolarFeedInTariffTariffUType string

The type of the payer

const (
	SingleTariff       EnergyPlanSolarFeedInTariffTariffUType = "singleTariff"
	TimeVaryingTariffs EnergyPlanSolarFeedInTariffTariffUType = "timeVaryingTariffs"
)

Defines values for EnergyPlanSolarFeedInTariffTariffUType.

type EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays

type EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays string

EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays defines model for EnergyPlanSolarFeedInTariff.TimeVaryingTariffs.TimeVariations.Days.

const (
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDaysFRI            EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays = "FRI"
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDaysMON            EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays = "MON"
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDaysPUBLICHOLIDAYS EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays = "PUBLIC_HOLIDAYS"
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDaysSAT            EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays = "SAT"
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDaysSUN            EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays = "SUN"
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDaysTHU            EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays = "THU"
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDaysTUE            EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays = "TUE"
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDaysWED            EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays = "WED"
)

Defines values for EnergyPlanSolarFeedInTariffTimeVaryingTariffsTimeVariationsDays.

type EnergyPlanSolarFeedInTariffTimeVaryingTariffsType

type EnergyPlanSolarFeedInTariffTimeVaryingTariffsType string

The type of the charging time period. If absent applies to all periods

const (
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTypeOFFPEAK  EnergyPlanSolarFeedInTariffTimeVaryingTariffsType = "OFF_PEAK"
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTypePEAK     EnergyPlanSolarFeedInTariffTimeVaryingTariffsType = "PEAK"
	EnergyPlanSolarFeedInTariffTimeVaryingTariffsTypeSHOULDER EnergyPlanSolarFeedInTariffTimeVaryingTariffsType = "SHOULDER"
)

Defines values for EnergyPlanSolarFeedInTariffTimeVaryingTariffsType.

type EnergyPlanTariffPeriod

type EnergyPlanTariffPeriod = []struct {
	// The amount of access charge for the tariff period, in dollars per day exclusive of GST.
	DailySupplyCharges *string `json:"dailySupplyCharges,omitempty"`

	// Array of demand charges.  Required if rateBlockUType is demandCharges
	DemandCharges *[]struct {
		// The charge amount per  measure unit exclusive of GST
		Amount string `json:"amount"`

		// Charge period for the demand tariff
		ChargePeriod EnergyPlanTariffPeriodDemandChargesChargePeriod `json:"chargePeriod"`

		// The days that the demand tariff applies to
		Days *[]EnergyPlanTariffPeriodDemandChargesDays `json:"days,omitempty"`

		// Description of the charge
		Description *string `json:"description,omitempty"`

		// Display name of the charge
		DisplayName string `json:"displayName"`

		// End of the period
		EndTime string `json:"endTime"`

		// Maximum demand for this demand tariff in kW.  If present, must be higher than the value of the minDemand field
		MaxDemand *string `json:"maxDemand,omitempty"`

		// The measurement unit of charge amount. Assumed to be KWH if absent
		MeasureUnit *EnergyPlanTariffPeriodDemandChargesMeasureUnit `json:"measureUnit,omitempty"`

		// Application period for the demand tariff
		MeasurementPeriod EnergyPlanTariffPeriodDemandChargesMeasurementPeriod `json:"measurementPeriod"`

		// Minimum demand for this demand tariff in kW.  If absent then 0 is assumed
		MinDemand *string `json:"minDemand,omitempty"`

		// Start of the period
		StartTime string `json:"startTime"`
	} `json:"demandCharges,omitempty"`

	// The name of the tariff period
	DisplayName string `json:"displayName"`

	// The end date of the tariff period in a calendar year.  Formatted in mm-dd format
	EndDate string `json:"endDate"`

	// Specifies the type of rate applicable to this tariff period
	RateBlockUType EnergyPlanTariffPeriodRateBlockUType `json:"rateBlockUType"`

	// Object representing a single rate.  Required if rateBlockUType is singleRate
	SingleRate *struct {
		// Description of the rate
		Description *string `json:"description,omitempty"`

		// Display name of the rate
		DisplayName string `json:"displayName"`

		// The block rate (unit price) for any usage above the included fixed usage, in dollars per kWh inclusive of GST.  Only required if pricingModel field is ‘QUOTA’
		GeneralUnitPrice *string `json:"generalUnitPrice,omitempty"`

		// Usage period for which the block rate applies. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
		Period *string `json:"period,omitempty"`

		// Array of controlled load rates in order of usage volume
		Rates []struct {
			// The measurement unit of rate. Assumed to be KWH if absent
			MeasureUnit *EnergyPlanTariffPeriodSingleRateRatesMeasureUnit `json:"measureUnit,omitempty"`

			// Unit price of usage per measure unit (exclusive of GST)
			UnitPrice string `json:"unitPrice"`

			// Volume in kWh that this rate applies to.  Only applicable for ‘stepped’ rates where different rates apply for different volumes of usage in a period
			Volume *float32 `json:"volume,omitempty"`
		} `json:"rates"`
	} `json:"singleRate,omitempty"`

	// The start date of the tariff period in a calendar year.  Formatted in mm-dd format
	StartDate string `json:"startDate"`

	// Array of objects representing time of use rates.  Required if rateBlockUType is timeOfUseRates
	TimeOfUseRates *[]struct {
		// Description of the rate
		Description *string `json:"description,omitempty"`

		// Display name of the rate
		DisplayName string `json:"displayName"`

		// Array of controlled load rates in order of usage volume
		Rates []struct {
			// The measurement unit of rate. Assumed to be KWH if absent
			MeasureUnit *EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit `json:"measureUnit,omitempty"`

			// Unit price of usage per  measure unit (exclusive of GST)
			UnitPrice string `json:"unitPrice"`

			// Volume in kWh that this rate applies to.  Only applicable for ‘stepped’ rates where different rates apply for different volumes of usage in a period
			Volume *float32 `json:"volume,omitempty"`
		} `json:"rates"`

		// Array of times of use
		TimeOfUse []struct {
			// The days that the rate applies to
			Days []EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays `json:"days"`

			// End of the period
			EndTime string `json:"endTime"`

			// Start of the period
			StartTime string `json:"startTime"`
		} `json:"timeOfUse"`

		// The type of usage that the rate applies to
		Type EnergyPlanTariffPeriodTimeOfUseRatesType `json:"type"`
	} `json:"timeOfUseRates,omitempty"`

	// Specifies the charge specific time zone for calculation of the time of use thresholds. If absent, timezone value in EnergyPlanContract is assumed.
	TimeZone *EnergyPlanTariffPeriodTimeZone `json:"timeZone,omitempty"`

	// Type of charge. Assumed to be other if absent
	Type *EnergyPlanTariffPeriodType `json:"type,omitempty"`
}

Array of tariff periods

type EnergyPlanTariffPeriodDemandChargesChargePeriod

type EnergyPlanTariffPeriodDemandChargesChargePeriod string

Charge period for the demand tariff

const (
	EnergyPlanTariffPeriodDemandChargesChargePeriodDAY          EnergyPlanTariffPeriodDemandChargesChargePeriod = "DAY"
	EnergyPlanTariffPeriodDemandChargesChargePeriodMONTH        EnergyPlanTariffPeriodDemandChargesChargePeriod = "MONTH"
	EnergyPlanTariffPeriodDemandChargesChargePeriodTARIFFPERIOD EnergyPlanTariffPeriodDemandChargesChargePeriod = "TARIFF_PERIOD"
)

Defines values for EnergyPlanTariffPeriodDemandChargesChargePeriod.

type EnergyPlanTariffPeriodDemandChargesDays

type EnergyPlanTariffPeriodDemandChargesDays string

EnergyPlanTariffPeriodDemandChargesDays defines model for EnergyPlanTariffPeriod.DemandCharges.Days.

const (
	EnergyPlanTariffPeriodDemandChargesDaysFRI            EnergyPlanTariffPeriodDemandChargesDays = "FRI"
	EnergyPlanTariffPeriodDemandChargesDaysMON            EnergyPlanTariffPeriodDemandChargesDays = "MON"
	EnergyPlanTariffPeriodDemandChargesDaysPUBLICHOLIDAYS EnergyPlanTariffPeriodDemandChargesDays = "PUBLIC_HOLIDAYS"
	EnergyPlanTariffPeriodDemandChargesDaysSAT            EnergyPlanTariffPeriodDemandChargesDays = "SAT"
	EnergyPlanTariffPeriodDemandChargesDaysSUN            EnergyPlanTariffPeriodDemandChargesDays = "SUN"
	EnergyPlanTariffPeriodDemandChargesDaysTHU            EnergyPlanTariffPeriodDemandChargesDays = "THU"
	EnergyPlanTariffPeriodDemandChargesDaysTUE            EnergyPlanTariffPeriodDemandChargesDays = "TUE"
	EnergyPlanTariffPeriodDemandChargesDaysWED            EnergyPlanTariffPeriodDemandChargesDays = "WED"
)

Defines values for EnergyPlanTariffPeriodDemandChargesDays.

type EnergyPlanTariffPeriodDemandChargesMeasureUnit

type EnergyPlanTariffPeriodDemandChargesMeasureUnit string

The measurement unit of charge amount. Assumed to be KWH if absent

const (
	EnergyPlanTariffPeriodDemandChargesMeasureUnitDAYS  EnergyPlanTariffPeriodDemandChargesMeasureUnit = "DAYS"
	EnergyPlanTariffPeriodDemandChargesMeasureUnitKVA   EnergyPlanTariffPeriodDemandChargesMeasureUnit = "KVA"
	EnergyPlanTariffPeriodDemandChargesMeasureUnitKVAR  EnergyPlanTariffPeriodDemandChargesMeasureUnit = "KVAR"
	EnergyPlanTariffPeriodDemandChargesMeasureUnitKVARH EnergyPlanTariffPeriodDemandChargesMeasureUnit = "KVARH"
	EnergyPlanTariffPeriodDemandChargesMeasureUnitKW    EnergyPlanTariffPeriodDemandChargesMeasureUnit = "KW"
	EnergyPlanTariffPeriodDemandChargesMeasureUnitKWH   EnergyPlanTariffPeriodDemandChargesMeasureUnit = "KWH"
	EnergyPlanTariffPeriodDemandChargesMeasureUnitMETER EnergyPlanTariffPeriodDemandChargesMeasureUnit = "METER"
	EnergyPlanTariffPeriodDemandChargesMeasureUnitMONTH EnergyPlanTariffPeriodDemandChargesMeasureUnit = "MONTH"
)

Defines values for EnergyPlanTariffPeriodDemandChargesMeasureUnit.

type EnergyPlanTariffPeriodDemandChargesMeasurementPeriod

type EnergyPlanTariffPeriodDemandChargesMeasurementPeriod string

Application period for the demand tariff

const (
	EnergyPlanTariffPeriodDemandChargesMeasurementPeriodDAY          EnergyPlanTariffPeriodDemandChargesMeasurementPeriod = "DAY"
	EnergyPlanTariffPeriodDemandChargesMeasurementPeriodMONTH        EnergyPlanTariffPeriodDemandChargesMeasurementPeriod = "MONTH"
	EnergyPlanTariffPeriodDemandChargesMeasurementPeriodTARIFFPERIOD EnergyPlanTariffPeriodDemandChargesMeasurementPeriod = "TARIFF_PERIOD"
)

Defines values for EnergyPlanTariffPeriodDemandChargesMeasurementPeriod.

type EnergyPlanTariffPeriodRateBlockUType

type EnergyPlanTariffPeriodRateBlockUType string

Specifies the type of rate applicable to this tariff period

const (
	EnergyPlanTariffPeriodRateBlockUTypeDemandCharges  EnergyPlanTariffPeriodRateBlockUType = "demandCharges"
	EnergyPlanTariffPeriodRateBlockUTypeSingleRate     EnergyPlanTariffPeriodRateBlockUType = "singleRate"
	EnergyPlanTariffPeriodRateBlockUTypeTimeOfUseRates EnergyPlanTariffPeriodRateBlockUType = "timeOfUseRates"
)

Defines values for EnergyPlanTariffPeriodRateBlockUType.

type EnergyPlanTariffPeriodSingleRateRatesMeasureUnit

type EnergyPlanTariffPeriodSingleRateRatesMeasureUnit string

The measurement unit of rate. Assumed to be KWH if absent

const (
	EnergyPlanTariffPeriodSingleRateRatesMeasureUnitDAYS  EnergyPlanTariffPeriodSingleRateRatesMeasureUnit = "DAYS"
	EnergyPlanTariffPeriodSingleRateRatesMeasureUnitKVA   EnergyPlanTariffPeriodSingleRateRatesMeasureUnit = "KVA"
	EnergyPlanTariffPeriodSingleRateRatesMeasureUnitKVAR  EnergyPlanTariffPeriodSingleRateRatesMeasureUnit = "KVAR"
	EnergyPlanTariffPeriodSingleRateRatesMeasureUnitKVARH EnergyPlanTariffPeriodSingleRateRatesMeasureUnit = "KVARH"
	EnergyPlanTariffPeriodSingleRateRatesMeasureUnitKW    EnergyPlanTariffPeriodSingleRateRatesMeasureUnit = "KW"
	EnergyPlanTariffPeriodSingleRateRatesMeasureUnitKWH   EnergyPlanTariffPeriodSingleRateRatesMeasureUnit = "KWH"
	EnergyPlanTariffPeriodSingleRateRatesMeasureUnitMETER EnergyPlanTariffPeriodSingleRateRatesMeasureUnit = "METER"
	EnergyPlanTariffPeriodSingleRateRatesMeasureUnitMONTH EnergyPlanTariffPeriodSingleRateRatesMeasureUnit = "MONTH"
)

Defines values for EnergyPlanTariffPeriodSingleRateRatesMeasureUnit.

type EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit

type EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit string

The measurement unit of rate. Assumed to be KWH if absent

const (
	EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnitDAYS  EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit = "DAYS"
	EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnitKVA   EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit = "KVA"
	EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnitKVAR  EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit = "KVAR"
	EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnitKVARH EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit = "KVARH"
	EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnitKW    EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit = "KW"
	EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnitKWH   EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit = "KWH"
	EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnitMETER EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit = "METER"
	EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnitMONTH EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit = "MONTH"
)

Defines values for EnergyPlanTariffPeriodTimeOfUseRatesRatesMeasureUnit.

type EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays

type EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays string

EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays defines model for EnergyPlanTariffPeriod.TimeOfUseRates.TimeOfUse.Days.

const (
	EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDaysFRI            EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays = "FRI"
	EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDaysMON            EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays = "MON"
	EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDaysPUBLICHOLIDAYS EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays = "PUBLIC_HOLIDAYS"
	EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDaysSAT            EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays = "SAT"
	EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDaysSUN            EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays = "SUN"
	EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDaysTHU            EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays = "THU"
	EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDaysTUE            EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays = "TUE"
	EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDaysWED            EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays = "WED"
)

Defines values for EnergyPlanTariffPeriodTimeOfUseRatesTimeOfUseDays.

type EnergyPlanTariffPeriodTimeOfUseRatesType

type EnergyPlanTariffPeriodTimeOfUseRatesType string

The type of usage that the rate applies to

const (
	EnergyPlanTariffPeriodTimeOfUseRatesTypeOFFPEAK   EnergyPlanTariffPeriodTimeOfUseRatesType = "OFF_PEAK"
	EnergyPlanTariffPeriodTimeOfUseRatesTypePEAK      EnergyPlanTariffPeriodTimeOfUseRatesType = "PEAK"
	EnergyPlanTariffPeriodTimeOfUseRatesTypeSHOULDER  EnergyPlanTariffPeriodTimeOfUseRatesType = "SHOULDER"
	EnergyPlanTariffPeriodTimeOfUseRatesTypeSHOULDER1 EnergyPlanTariffPeriodTimeOfUseRatesType = "SHOULDER1"
	EnergyPlanTariffPeriodTimeOfUseRatesTypeSHOULDER2 EnergyPlanTariffPeriodTimeOfUseRatesType = "SHOULDER2"
)

Defines values for EnergyPlanTariffPeriodTimeOfUseRatesType.

type EnergyPlanTariffPeriodTimeZone

type EnergyPlanTariffPeriodTimeZone string

Specifies the charge specific time zone for calculation of the time of use thresholds. If absent, timezone value in EnergyPlanContract is assumed.

const (
	AEST  EnergyPlanTariffPeriodTimeZone = "AEST"
	LOCAL EnergyPlanTariffPeriodTimeZone = "LOCAL"
)

Defines values for EnergyPlanTariffPeriodTimeZone.

type EnergyPlanTariffPeriodType

type EnergyPlanTariffPeriodType string

Type of charge. Assumed to be other if absent

const (
	ENVIRONMENTAL EnergyPlanTariffPeriodType = "ENVIRONMENTAL"
	METERING      EnergyPlanTariffPeriodType = "METERING"
	NETWORK       EnergyPlanTariffPeriodType = "NETWORK"
	OTHER         EnergyPlanTariffPeriodType = "OTHER"
	RCTI          EnergyPlanTariffPeriodType = "RCTI"
	REGULATED     EnergyPlanTariffPeriodType = "REGULATED"
	RETAILSERVICE EnergyPlanTariffPeriodType = "RETAIL_SERVICE"
)

Defines values for EnergyPlanTariffPeriodType.

type EnergyPlanType

type EnergyPlanType string

The type of the plan

const (
	EnergyPlanTypeMARKET    EnergyPlanType = "MARKET"
	EnergyPlanTypeREGULATED EnergyPlanType = "REGULATED"
	EnergyPlanTypeSTANDING  EnergyPlanType = "STANDING"
)

Defines values for EnergyPlanType.

type EnergyPlans added in v0.1.2

type EnergyPlans struct {
	Nickname *string `json:"nickname,omitempty" example:"nickname"` // Optional display name for the plan provided by the customer to help differentiate multiple plans
	// Mandatory if openStatus is OPEN
	PlanOverview    *EnergyPlanOverview `json:"planOverview,omitempty"`
	ServicePointIds []string            `json:"servicePointIds" example:"43,44,45"` // An array of servicePointIds, representing NMIs, that this plan is linked to.  If there are no service points allocated to this plan then an empty array would be expected
}

type EnergyReadQualities added in v0.1.2

type EnergyReadQualities struct {
	EndInterval int `json:"endInterval" example:"1"` // End interval for read quality flag
}

type EnergyServicePoint

type EnergyServicePoint struct {
	ConsumerProfile *struct {
		// A code that defines the consumer class as defined in the National Energy Retail Regulations, or in overriding Jurisdictional instruments
		Classification *EnergyServicePointConsumerProfileClassification `json:"classification,omitempty"`

		// A code that defines the consumption threshold as defined in the National Energy Retail Regulations, or in overriding Jurisdictional instruments. Note the details of enumeration values below: <ul><li>**LOW** - Consumption is less than the ‘lower consumption threshold’ as defined in the National Energy Retail Regulations</li><li>**MEDIUM** - Consumption is equal to or greater than the ‘lower consumption threshold’, but less than the ‘upper consumption threshold’, as defined in the National Energy Retail Regulations</li><li>**HIGH** - Consumption is equal to or greater than the ‘upper consumption threshold’ as defined in the National Energy Retail Regulations</li></ul>
		Threshold *interface{} `json:"threshold,omitempty"`
	} `json:"consumerProfile,omitempty"`

	// This flag determines whether the energy at this connection point is to be treated as consumer load or as a generating unit(this may include generator auxiliary loads). If absent defaults to false. <br>**Note:** Only applicable for scheduled or semischeduled generators, does not indicate on site generation by consumer
	IsGenerator *bool `json:"isGenerator,omitempty"`

	// Jurisdiction code to which the service point belongs.This code defines the jurisdictional rules which apply to the service point. Note the details of enumeration values below:<ul><li>**ALL** - All Jurisdictions</li><li>**ACT** - Australian Capital Territory</li><li>**NEM** - National Electricity Market</li><li>**NSW** - New South Wales</li><li>**QLD** - Queensland</li><li>**SA** - South Australia</li><li>**TAS** - Tasmania</li><li>**VIC** - Victoria</li></ul>
	JurisdictionCode EnergyServicePointJurisdictionCode `json:"jurisdictionCode"`

	// The date and time that the information for this service point was modified
	LastUpdateDateTime string `json:"lastUpdateDateTime"`

	// The independent ID of the service point, known in the industry as the NMI
	NationalMeteringId string `json:"nationalMeteringId"`

	// The classification of the service point as defined in MSATS procedures
	ServicePointClassification EnergyServicePointServicePointClassification `json:"servicePointClassification"`

	// Tokenised ID of the service point to be used for referring to the service point in the CDR API suite. To be created in accordance with CDR ID permanence requirements
	ServicePointId string `json:"servicePointId"`

	// Code used to indicate the status of the service point. Note the details for the enumeration values below:<ul><li>**ACTIVE** - An active, energised, service point</li><li>**DE_ENERGISED** - The service point exists but is deenergised</li><li>**EXTINCT** - The service point has been permanently decommissioned</li><li>**GREENFIELD** - Applies to a service point that has never been energised</li><li>**OFF_MARKET** - Applies when the service point is no longer settled in the NEM</li></ul>
	ServicePointStatus EnergyServicePointServicePointStatus `json:"servicePointStatus"`

	// The latest start date from which the constituent data sets of this service point became valid
	ValidFromDate string `json:"validFromDate"`
}

EnergyServicePoint defines model for EnergyServicePoint.

type EnergyServicePointConsumerProfileClassification

type EnergyServicePointConsumerProfileClassification string

A code that defines the consumer class as defined in the National Energy Retail Regulations, or in overriding Jurisdictional instruments

const (
	EnergyServicePointConsumerProfileClassificationBUSINESS    EnergyServicePointConsumerProfileClassification = "BUSINESS"
	EnergyServicePointConsumerProfileClassificationRESIDENTIAL EnergyServicePointConsumerProfileClassification = "RESIDENTIAL"
)

Defines values for EnergyServicePointConsumerProfileClassification.

type EnergyServicePointDetail

type EnergyServicePointDetail struct {
	ConsumerProfile *struct {
		// A code that defines the consumer class as defined in the National Energy Retail Regulations, or in overriding Jurisdictional instruments
		Classification *EnergyServicePointDetailConsumerProfileClassification `json:"classification,omitempty"`

		// A code that defines the consumption threshold as defined in the National Energy Retail Regulations, or in overriding Jurisdictional instruments. Note the details of enumeration values below: <ul><li>**LOW** - Consumption is less than the ‘lower consumption threshold’ as defined in the National Energy Retail Regulations</li><li>**MEDIUM** - Consumption is equal to or greater than the ‘lower consumption threshold’, but less than the ‘upper consumption threshold’, as defined in the National Energy Retail Regulations</li><li>**HIGH** - Consumption is equal to or greater than the ‘upper consumption threshold’ as defined in the National Energy Retail Regulations</li></ul>
		Threshold *interface{} `json:"threshold,omitempty"`
	} `json:"consumerProfile,omitempty"`
	DistributionLossFactor struct {
		// A code used to identify data loss factor for the service point values.  Refer to AEMO distribution loss factor documents for each financial year to interpret
		Code string `json:"code"`

		// Description of the data loss factor code and value
		Description string `json:"description"`

		// The value associated with the loss factor code
		LossValue string `json:"lossValue"`
	} `json:"distributionLossFactor"`

	// This flag determines whether the energy at this connection point is to be treated as consumer load or as a generating unit(this may include generator auxiliary loads). If absent defaults to false. <br>**Note:** Only applicable for scheduled or semischeduled generators, does not indicate on site generation by consumer
	IsGenerator *bool `json:"isGenerator,omitempty"`

	// Jurisdiction code to which the service point belongs.This code defines the jurisdictional rules which apply to the service point. Note the details of enumeration values below:<ul><li>**ALL** - All Jurisdictions</li><li>**ACT** - Australian Capital Territory</li><li>**NEM** - National Electricity Market</li><li>**NSW** - New South Wales</li><li>**QLD** - Queensland</li><li>**SA** - South Australia</li><li>**TAS** - Tasmania</li><li>**VIC** - Victoria</li></ul>
	JurisdictionCode EnergyServicePointDetailJurisdictionCode `json:"jurisdictionCode"`

	// The date and time that the information for this service point was modified
	LastUpdateDateTime string                `json:"lastUpdateDateTime"`
	Location           CommonPhysicalAddress `json:"location"`

	// The meters associated with the service point. This may be empty where there are no meters physically installed at the service point
	Meters *[]struct {
		// The meter ID uniquely identifies a meter for a given service point.  It is unique in the context of the service point.  It is not globally unique
		MeterId string `json:"meterId"`

		// Usage data registers available from the meter. This may be empty where there are no meters physically installed at the service point
		Registers *[]struct {
			// The energy delivered through a connection point or metering point over an extended period normalised to a 'per day' basis (kWh). This value is calculated annually.
			AveragedDailyLoad *float32 `json:"averagedDailyLoad,omitempty"`

			// Actual/Subtractive Indicator. Note the details of enumeration values below: <ul><li>**ACTUAL** implies volume of energy actually metered between two dates</li><li>**CUMULATIVE** indicates a meter reading for a specific date. A second Meter Reading is required to determine the consumption between those two Meter Reading dates</li></ul>
			ConsumptionType *EnergyServicePointDetailMetersRegistersConsumptionType `json:"consumptionType,omitempty"`

			// Indicates whether the energy recorded by this register is created under a Controlled Load regime
			ControlledLoad *bool `json:"controlledLoad,omitempty"`

			// Multiplier required to take a register value and turn it into a value representing billable energy
			Multiplier *float32 `json:"multiplier,omitempty"`

			// The Network Tariff Code is a free text field containing a code supplied and published by the local network service provider
			NetworkTariffCode *string `json:"networkTariffCode,omitempty"`

			// Indicates the consumption type of register
			RegisterConsumptionType EnergyServicePointDetailMetersRegistersRegisterConsumptionType `json:"registerConsumptionType"`

			// Unique identifier of the register within this service point.  Is not globally unique
			RegisterId string `json:"registerId"`

			// Register suffix of the meter register where the meter reads are obtained
			RegisterSuffix *string `json:"registerSuffix,omitempty"`

			// Code to identify the time validity of register contents
			TimeOfDay *EnergyServicePointDetailMetersRegistersTimeOfDay `json:"timeOfDay,omitempty"`

			// The unit of measure for data held in this register
			UnitOfMeasure *string `json:"unitOfMeasure,omitempty"`
		} `json:"registers,omitempty"`

		// Technical characteristics of the meter
		Specifications struct {
			// The metering Installation type code indicates whether the metering installation has to be manually read. Note the details of enumeration values below: <ul><li>**BASIC** - Accumulation Meter – Type 6</li><li>**COMMS1** - Interval Meter with communications – Type 1</li><li>**COMMS2** - Interval Meter with communications – Type 2</li><li>**COMMS3** - Interval Meter with communications – Type 3</li><li>**COMMS4** - Interval Meter with communications – Type 4</li><li>**COMMS4C** - CT connected metering installation that meets the minimum services specifications</li><li>**COMMS4D** - Whole current metering installation that meets the minimum services specifications</li><li>**MRAM** - Small customer metering installation – Type 4A</li><li>**MRIM** - Manually Read Interval Meter – Type 5</li><li>**UMCP** - Unmetered Supply – Type 7</li><li>**VICAMI** - A relevant metering installation as defined in clause 9.9C of the NER</li><li>**NCONUML** - Non-contestable unmeter load - Introduced as part of Global Settlement</li></ul>
			InstallationType EnergyServicePointDetailMetersSpecificationsInstallationType `json:"installationType"`

			// Free text field to identify the manufacturer of the installed meter
			Manufacturer *string `json:"manufacturer,omitempty"`

			// Free text field to identify the meter manufacturer’s designation for the meter model
			Model *string `json:"model,omitempty"`

			// This date is the next scheduled meter read date (NSRD) if a manual Meter Reading is required
			NextScheduledReadDate *string `json:"nextScheduledReadDate,omitempty"`

			// Code to denote the method and frequency of Meter Reading. The value is formatted as follows: <ul><li>First Character = Remote (R) or Manual (M)</li><li>Second Character = Mode: T = telephone W = wireless P = powerline I = infra-red G = galvanic V = visual </li><li>Third Character = Frequency of Scheduled Meter Readings: 1 = Twelve times per year 2 = Six times per year 3 = Four times per year D = Daily or weekly</li><li>Optional Fourth Character = to identify what interval length the meter is capable of reading. This includes five, 15 and 30 minute granularity as the following: A – 5 minute B – 15 minute C – 30 minute D – Cannot convert to 5 minute (i.e. due to metering installation de-energised) M - Manually Read Accumulation Meter</li></ul> For example, <ul><li>MV3 = Manual, Visual, Quarterly</li> <li>MV3M = Manual, Visual, Quarterly, Manually Read Accumulation Meter</li> <li>RWDC = Remote, Wireless, Daily, 30 minutes interval</li></ul>
			ReadType *string `json:"readType,omitempty"`

			// A code to denote the status of the meter. Note the details of enumeration values below: <ul><li>**CURRENT** -Applies when a meter is current and not disconnected</li><li>**DISCONNECTED** - Applies when a meter is present but has been remotely disconnected</li></ul>
			Status EnergyServicePointDetailMetersSpecificationsStatus `json:"status"`
		} `json:"specifications"`
	} `json:"meters,omitempty"`

	// The independent ID of the service point, known in the industry as the NMI
	NationalMeteringId  string `json:"nationalMeteringId"`
	RelatedParticipants []struct {
		// The name of the party/orginsation related to this service point
		Party string `json:"party"`

		// The role performed by this participant in relation to the service point. Note the details of enumeration values below: <ul><li>**FRMP** - Financially Responsible Market Participant</li><li>**LNSP** - Local Network Service Provider or Embedded Network Manager for child connection points</li><li>**DRSP** - wholesale Demand Response and/or market ancillary Service Provider and note that where it is not relevant for a NMI it will not be included</li></ul>
		Role EnergyServicePointDetailRelatedParticipantsRole `json:"role"`
	} `json:"relatedParticipants"`

	// The classification of the service point as defined in MSATS procedures
	ServicePointClassification EnergyServicePointDetailServicePointClassification `json:"servicePointClassification"`

	// The tokenised ID of the service point for use in the CDR APIs.  Created according to the CDR rules for ID permanence
	ServicePointId string `json:"servicePointId"`

	// Code used to indicate the status of the service point. Note the details for the enumeration values below:<ul><li>**ACTIVE** - An active, energised, service point</li><li>**DE_ENERGISED** - The service point exists but is deenergised</li><li>**EXTINCT** - The service point has been permanently decommissioned</li><li>**GREENFIELD** - Applies to a service point that has never been energised</li><li>**OFF_MARKET** - Applies when the service point is no longer settled in the NEM</li></ul>
	ServicePointStatus EnergyServicePointDetailServicePointStatus `json:"servicePointStatus"`

	// The latest start date from which the constituent data sets of this service point became valid
	ValidFromDate string `json:"validFromDate"`
}

EnergyServicePointDetail defines model for EnergyServicePointDetail.

type EnergyServicePointDetailConsumerProfileClassification

type EnergyServicePointDetailConsumerProfileClassification string

A code that defines the consumer class as defined in the National Energy Retail Regulations, or in overriding Jurisdictional instruments

const (
	EnergyServicePointDetailConsumerProfileClassificationBUSINESS    EnergyServicePointDetailConsumerProfileClassification = "BUSINESS"
	EnergyServicePointDetailConsumerProfileClassificationRESIDENTIAL EnergyServicePointDetailConsumerProfileClassification = "RESIDENTIAL"
)

Defines values for EnergyServicePointDetailConsumerProfileClassification.

type EnergyServicePointDetailJurisdictionCode

type EnergyServicePointDetailJurisdictionCode string

Jurisdiction code to which the service point belongs.This code defines the jurisdictional rules which apply to the service point. Note the details of enumeration values below:<ul><li>**ALL** - All Jurisdictions</li><li>**ACT** - Australian Capital Territory</li><li>**NEM** - National Electricity Market</li><li>**NSW** - New South Wales</li><li>**QLD** - Queensland</li><li>**SA** - South Australia</li><li>**TAS** - Tasmania</li><li>**VIC** - Victoria</li></ul>

const (
	EnergyServicePointDetailJurisdictionCodeACT EnergyServicePointDetailJurisdictionCode = "ACT"
	EnergyServicePointDetailJurisdictionCodeALL EnergyServicePointDetailJurisdictionCode = "ALL"
	EnergyServicePointDetailJurisdictionCodeNEM EnergyServicePointDetailJurisdictionCode = "NEM"
	EnergyServicePointDetailJurisdictionCodeNSW EnergyServicePointDetailJurisdictionCode = "NSW"
	EnergyServicePointDetailJurisdictionCodeQLD EnergyServicePointDetailJurisdictionCode = "QLD"
	EnergyServicePointDetailJurisdictionCodeSA  EnergyServicePointDetailJurisdictionCode = "SA"
	EnergyServicePointDetailJurisdictionCodeTAS EnergyServicePointDetailJurisdictionCode = "TAS"
	EnergyServicePointDetailJurisdictionCodeVIC EnergyServicePointDetailJurisdictionCode = "VIC"
)

Defines values for EnergyServicePointDetailJurisdictionCode.

type EnergyServicePointDetailMetersRegistersConsumptionType

type EnergyServicePointDetailMetersRegistersConsumptionType string

Actual/Subtractive Indicator. Note the details of enumeration values below: <ul><li>**ACTUAL** implies volume of energy actually metered between two dates</li><li>**CUMULATIVE** indicates a meter reading for a specific date. A second Meter Reading is required to determine the consumption between those two Meter Reading dates</li></ul>

const (
	EnergyServicePointDetailMetersRegistersConsumptionTypeACTUAL     EnergyServicePointDetailMetersRegistersConsumptionType = "ACTUAL"
	EnergyServicePointDetailMetersRegistersConsumptionTypeCUMULATIVE EnergyServicePointDetailMetersRegistersConsumptionType = "CUMULATIVE"
)

Defines values for EnergyServicePointDetailMetersRegistersConsumptionType.

type EnergyServicePointDetailMetersRegistersRegisterConsumptionType

type EnergyServicePointDetailMetersRegistersRegisterConsumptionType string

Indicates the consumption type of register

const (
	EnergyServicePointDetailMetersRegistersRegisterConsumptionTypeACTIVE         EnergyServicePointDetailMetersRegistersRegisterConsumptionType = "ACTIVE"
	EnergyServicePointDetailMetersRegistersRegisterConsumptionTypeACTIVEIMPORT   EnergyServicePointDetailMetersRegistersRegisterConsumptionType = "ACTIVE_IMPORT"
	EnergyServicePointDetailMetersRegistersRegisterConsumptionTypeBASIC          EnergyServicePointDetailMetersRegistersRegisterConsumptionType = "BASIC"
	EnergyServicePointDetailMetersRegistersRegisterConsumptionTypeINTERVAL       EnergyServicePointDetailMetersRegistersRegisterConsumptionType = "INTERVAL"
	EnergyServicePointDetailMetersRegistersRegisterConsumptionTypePROFILEDATA    EnergyServicePointDetailMetersRegistersRegisterConsumptionType = "PROFILE_DATA"
	EnergyServicePointDetailMetersRegistersRegisterConsumptionTypeREACTIVE       EnergyServicePointDetailMetersRegistersRegisterConsumptionType = "REACTIVE"
	EnergyServicePointDetailMetersRegistersRegisterConsumptionTypeREACTIVEIMPORT EnergyServicePointDetailMetersRegistersRegisterConsumptionType = "REACTIVE_IMPORT"
)

Defines values for EnergyServicePointDetailMetersRegistersRegisterConsumptionType.

type EnergyServicePointDetailMetersRegistersTimeOfDay

type EnergyServicePointDetailMetersRegistersTimeOfDay string

Code to identify the time validity of register contents

const (
	EnergyServicePointDetailMetersRegistersTimeOfDayALLDAY     EnergyServicePointDetailMetersRegistersTimeOfDay = "ALLDAY"
	EnergyServicePointDetailMetersRegistersTimeOfDayBUSINESS   EnergyServicePointDetailMetersRegistersTimeOfDay = "BUSINESS"
	EnergyServicePointDetailMetersRegistersTimeOfDayCONTROLLED EnergyServicePointDetailMetersRegistersTimeOfDay = "CONTROLLED"
	EnergyServicePointDetailMetersRegistersTimeOfDayDEMAND     EnergyServicePointDetailMetersRegistersTimeOfDay = "DEMAND"
	EnergyServicePointDetailMetersRegistersTimeOfDayEVENING    EnergyServicePointDetailMetersRegistersTimeOfDay = "EVENING"
	EnergyServicePointDetailMetersRegistersTimeOfDayINTERVAL   EnergyServicePointDetailMetersRegistersTimeOfDay = "INTERVAL"
	EnergyServicePointDetailMetersRegistersTimeOfDayOFFPEAK    EnergyServicePointDetailMetersRegistersTimeOfDay = "OFFPEAK"
	EnergyServicePointDetailMetersRegistersTimeOfDayPEAK       EnergyServicePointDetailMetersRegistersTimeOfDay = "PEAK"
	EnergyServicePointDetailMetersRegistersTimeOfDaySHOULDER   EnergyServicePointDetailMetersRegistersTimeOfDay = "SHOULDER"
)

Defines values for EnergyServicePointDetailMetersRegistersTimeOfDay.

type EnergyServicePointDetailMetersSpecificationsInstallationType

type EnergyServicePointDetailMetersSpecificationsInstallationType string

The metering Installation type code indicates whether the metering installation has to be manually read. Note the details of enumeration values below: <ul><li>**BASIC** - Accumulation Meter – Type 6</li><li>**COMMS1** - Interval Meter with communications – Type 1</li><li>**COMMS2** - Interval Meter with communications – Type 2</li><li>**COMMS3** - Interval Meter with communications – Type 3</li><li>**COMMS4** - Interval Meter with communications – Type 4</li><li>**COMMS4C** - CT connected metering installation that meets the minimum services specifications</li><li>**COMMS4D** - Whole current metering installation that meets the minimum services specifications</li><li>**MRAM** - Small customer metering installation – Type 4A</li><li>**MRIM** - Manually Read Interval Meter – Type 5</li><li>**UMCP** - Unmetered Supply – Type 7</li><li>**VICAMI** - A relevant metering installation as defined in clause 9.9C of the NER</li><li>**NCONUML** - Non-contestable unmeter load - Introduced as part of Global Settlement</li></ul>

type EnergyServicePointDetailMetersSpecificationsStatus

type EnergyServicePointDetailMetersSpecificationsStatus string

A code to denote the status of the meter. Note the details of enumeration values below: <ul><li>**CURRENT** -Applies when a meter is current and not disconnected</li><li>**DISCONNECTED** - Applies when a meter is present but has been remotely disconnected</li></ul>

Defines values for EnergyServicePointDetailMetersSpecificationsStatus.

type EnergyServicePointDetailRelatedParticipantsRole

type EnergyServicePointDetailRelatedParticipantsRole string

The role performed by this participant in relation to the service point. Note the details of enumeration values below: <ul><li>**FRMP** - Financially Responsible Market Participant</li><li>**LNSP** - Local Network Service Provider or Embedded Network Manager for child connection points</li><li>**DRSP** - wholesale Demand Response and/or market ancillary Service Provider and note that where it is not relevant for a NMI it will not be included</li></ul>

Defines values for EnergyServicePointDetailRelatedParticipantsRole.

type EnergyServicePointDetailResponse

type EnergyServicePointDetailResponse struct {
	Data  EnergyServicePointDetail `json:"data"`
	Links Links                    `json:"links"`
	Meta  *Meta                    `json:"meta,omitempty"`
}

EnergyServicePointDetailResponse defines model for EnergyServicePointDetailResponse.

type EnergyServicePointDetailServicePointClassification

type EnergyServicePointDetailServicePointClassification string

The classification of the service point as defined in MSATS procedures

const (
	EnergyServicePointDetailServicePointClassificationDISTRIBUTIONWHOLESALE          EnergyServicePointDetailServicePointClassification = "DISTRIBUTION_WHOLESALE"
	EnergyServicePointDetailServicePointClassificationEXTERNALPROFILE                EnergyServicePointDetailServicePointClassification = "EXTERNAL_PROFILE"
	EnergyServicePointDetailServicePointClassificationGENERATOR                      EnergyServicePointDetailServicePointClassification = "GENERATOR"
	EnergyServicePointDetailServicePointClassificationLARGE                          EnergyServicePointDetailServicePointClassification = "LARGE"
	EnergyServicePointDetailServicePointClassificationNONCONTESTUNMETEREDLOAD        EnergyServicePointDetailServicePointClassification = "NON_CONTEST_UNMETERED_LOAD"
	EnergyServicePointDetailServicePointClassificationNONREGISTEREDEMBEDDEDGENERATOR EnergyServicePointDetailServicePointClassification = "NON_REGISTERED_EMBEDDED_GENERATOR"
	EnergyServicePointDetailServicePointClassificationSMALL                          EnergyServicePointDetailServicePointClassification = "SMALL"
	EnergyServicePointDetailServicePointClassificationWHOLESALE                      EnergyServicePointDetailServicePointClassification = "WHOLESALE"
)

Defines values for EnergyServicePointDetailServicePointClassification.

type EnergyServicePointDetailServicePointStatus

type EnergyServicePointDetailServicePointStatus string

Code used to indicate the status of the service point. Note the details for the enumeration values below:<ul><li>**ACTIVE** - An active, energised, service point</li><li>**DE_ENERGISED** - The service point exists but is deenergised</li><li>**EXTINCT** - The service point has been permanently decommissioned</li><li>**GREENFIELD** - Applies to a service point that has never been energised</li><li>**OFF_MARKET** - Applies when the service point is no longer settled in the NEM</li></ul>

Defines values for EnergyServicePointDetailServicePointStatus.

type EnergyServicePointJurisdictionCode

type EnergyServicePointJurisdictionCode string

Jurisdiction code to which the service point belongs.This code defines the jurisdictional rules which apply to the service point. Note the details of enumeration values below:<ul><li>**ALL** - All Jurisdictions</li><li>**ACT** - Australian Capital Territory</li><li>**NEM** - National Electricity Market</li><li>**NSW** - New South Wales</li><li>**QLD** - Queensland</li><li>**SA** - South Australia</li><li>**TAS** - Tasmania</li><li>**VIC** - Victoria</li></ul>

const (
	EnergyServicePointJurisdictionCodeACT EnergyServicePointJurisdictionCode = "ACT"
	EnergyServicePointJurisdictionCodeALL EnergyServicePointJurisdictionCode = "ALL"
	EnergyServicePointJurisdictionCodeNEM EnergyServicePointJurisdictionCode = "NEM"
	EnergyServicePointJurisdictionCodeNSW EnergyServicePointJurisdictionCode = "NSW"
	EnergyServicePointJurisdictionCodeQLD EnergyServicePointJurisdictionCode = "QLD"
	EnergyServicePointJurisdictionCodeSA  EnergyServicePointJurisdictionCode = "SA"
	EnergyServicePointJurisdictionCodeTAS EnergyServicePointJurisdictionCode = "TAS"
	EnergyServicePointJurisdictionCodeVIC EnergyServicePointJurisdictionCode = "VIC"
)

Defines values for EnergyServicePointJurisdictionCode.

type EnergyServicePointListResponse

type EnergyServicePointListResponse struct {
	Data struct {
		ServicePoints []EnergyServicePoint `json:"servicePoints"`
	} `json:"data"`
	Links LinksPaginated `json:"links"`
	Meta  MetaPaginated  `json:"meta"`
}

EnergyServicePointListResponse defines model for EnergyServicePointListResponse.

type EnergyServicePointServicePointClassification

type EnergyServicePointServicePointClassification string

The classification of the service point as defined in MSATS procedures

const (
	EnergyServicePointServicePointClassificationDISTRIBUTIONWHOLESALE          EnergyServicePointServicePointClassification = "DISTRIBUTION_WHOLESALE"
	EnergyServicePointServicePointClassificationEXTERNALPROFILE                EnergyServicePointServicePointClassification = "EXTERNAL_PROFILE"
	EnergyServicePointServicePointClassificationGENERATOR                      EnergyServicePointServicePointClassification = "GENERATOR"
	EnergyServicePointServicePointClassificationLARGE                          EnergyServicePointServicePointClassification = "LARGE"
	EnergyServicePointServicePointClassificationNONCONTESTUNMETEREDLOAD        EnergyServicePointServicePointClassification = "NON_CONTEST_UNMETERED_LOAD"
	EnergyServicePointServicePointClassificationNONREGISTEREDEMBEDDEDGENERATOR EnergyServicePointServicePointClassification = "NON_REGISTERED_EMBEDDED_GENERATOR"
	EnergyServicePointServicePointClassificationSMALL                          EnergyServicePointServicePointClassification = "SMALL"
	EnergyServicePointServicePointClassificationWHOLESALE                      EnergyServicePointServicePointClassification = "WHOLESALE"
)

Defines values for EnergyServicePointServicePointClassification.

type EnergyServicePointServicePointStatus

type EnergyServicePointServicePointStatus string

Code used to indicate the status of the service point. Note the details for the enumeration values below:<ul><li>**ACTIVE** - An active, energised, service point</li><li>**DE_ENERGISED** - The service point exists but is deenergised</li><li>**EXTINCT** - The service point has been permanently decommissioned</li><li>**GREENFIELD** - Applies to a service point that has never been energised</li><li>**OFF_MARKET** - Applies when the service point is no longer settled in the NEM</li></ul>

const (
	EnergyServicePointServicePointStatusACTIVE      EnergyServicePointServicePointStatus = "ACTIVE"
	EnergyServicePointServicePointStatusDEENERGISED EnergyServicePointServicePointStatus = "DE_ENERGISED"
	EnergyServicePointServicePointStatusEXTINCT     EnergyServicePointServicePointStatus = "EXTINCT"
	EnergyServicePointServicePointStatusGREENFIELD  EnergyServicePointServicePointStatus = "GREENFIELD"
	EnergyServicePointServicePointStatusOFFMARKET   EnergyServicePointServicePointStatus = "OFF_MARKET"
)

Defines values for EnergyServicePointServicePointStatus.

type EnergyUsageListResponse

type EnergyUsageListResponse struct {
	Data struct {
		// Array of meter reads sorted by NMI in ascending order followed by readStartDate in descending order
		Reads []EnergyUsageRead `json:"reads"`
	} `json:"data"`
	Links LinksPaginated `json:"links"`
	Meta  MetaPaginated  `json:"meta"`
}

EnergyUsageListResponse defines model for EnergyUsageListResponse.

type EnergyUsageRead

type EnergyUsageRead struct {
	BasicRead *EnergyBasicRead `json:"basicRead,omitempty"` // Mandatory if readUType is set to basicRead

	ControlledLoad *bool `json:"controlledLoad,omitempty" example:"true"` // Indicates whether the energy recorded by this regirunningster is created under a Controlled Load regime

	IntervalRead *EnergyIntervalRead `json:"intervalRead,omitempty"` // Mandatory if readUType is set to intervalRead

	MeterId *string `json:"meterId,omitempty" example:"7"` // Meter id/serial number as it appears in customer’s bill. ID permanence rules do not apply.

	ReadEndDate *string `json:"readEndDate,omitempty" example:"2007-05-01T15:43:00.12345Z"` // Date when the meter reads end in AEST.  If absent then assumed to be equal to readStartDate.  In this case the entry represents data for a single date specified by readStartDate.

	ReadStartDate string `json:"readStartDate" example:"2007-05-01T15:43:00.12345Z"` // Date when the meter reads start in AEST and assumed to start from 12:00 am AEST.

	ReadUType EnergyUsageReadReadUType `json:"readUType" example:"basicRead"` // Specify the type of the meter read data

	RegisterId *string `json:"registerId,omitempty" example:"9"` // Register ID of the meter register where the meter reads are obtained

	RegisterSuffix string `json:"registerSuffix" example:"suffix"` // Register suffix of the meter register where the meter reads are obtained

	ServicePointId string `json:"servicePointId" example:"ServicePointId"` // Tokenised ID of the service point to be used for referring to the service point in the CDR API suite.  To be created in accordance with CDR ID permanence requirements

	UnitOfMeasure *string `json:"unitOfMeasure,omitempty" example:"KHW"` // Unit of measure of the meter reads. Refer to Appendix B of <a href='https://www.aemo.com.au/-/media/files/stakeholder_consultation/consultations/nem-consultations/2019/5ms-metering-package-2/final-determination/mdff-specification-nem12-nem13-v21-final-determination-clean.pdf?la=en&hash=03FCBA0D60E091DE00F2361AE76206EA'>MDFF Specification NEM12 NEM13 v2.1</a> for a list of possible values.
}

EnergyUsageRead defines model for EnergyUsageRead.

type EnergyUsageReadBasicReadQuality

type EnergyUsageReadBasicReadQuality string

The quality of the read taken. If absent then assumed to be ACTUAL

const (
	EnergyUsageReadBasicReadQualityACTUAL          EnergyUsageReadBasicReadQuality = "ACTUAL"
	EnergyUsageReadBasicReadQualityFINALSUBSTITUTE EnergyUsageReadBasicReadQuality = "FINAL_SUBSTITUTE"
	EnergyUsageReadBasicReadQualitySUBSTITUTE      EnergyUsageReadBasicReadQuality = "SUBSTITUTE"
)

Defines values for EnergyUsageReadBasicReadQuality.

type EnergyUsageReadIntervalReadReadQualitiesQuality

type EnergyUsageReadIntervalReadReadQualitiesQuality string

The quality of the read taken

const (
	FINALSUBSTITUTE EnergyUsageReadIntervalReadReadQualitiesQuality = "FINAL_SUBSTITUTE"
	SUBSTITUTE      EnergyUsageReadIntervalReadReadQualitiesQuality = "SUBSTITUTE"
)

Defines values for EnergyUsageReadIntervalReadReadQualitiesQuality.

type EnergyUsageReadReadUType

type EnergyUsageReadReadUType string

Specify the type of the meter read data

const (
	BasicRead    EnergyUsageReadReadUType = "basicRead"
	IntervalRead EnergyUsageReadReadUType = "intervalRead"
)

Defines values for EnergyUsageReadReadUType.

type ErrorListResponse

type ErrorListResponse struct {
	Errors []struct {
		// The code of the error encountered. Where the error is specific to the respondent, an application-specific error code, expressed as a string value. If the error is application-specific, the URN code that the specific error extends must be provided in the meta object. Otherwise, the value is the error code URN.
		Code string `json:"code"`

		// A human-readable explanation specific to this occurrence of the problem.
		Detail string `json:"detail"`

		// Additional data for customised error codes
		Meta *struct {
			// The CDR error code URN which the application-specific error code extends. Mandatory if the error `code` is an application-specific error rather than a standardised error code.
			Urn *string `json:"urn,omitempty"`
		} `json:"meta,omitempty"`

		// A short, human-readable summary of the problem that MUST NOT change from occurrence to occurrence of the problem represented by the error code.
		Title string `json:"title"`
	} `json:"errors"`
}

ErrorListResponse defines model for ErrorListResponse.

type GetAccountParams

type GetAccountParams struct {
	// Used to filter results according to open/closed status. Values can be OPEN, CLOSED or ALL. If absent then ALL is assumed
	OpenStatus *GetAccountParamsOpenStatus `form:"open-status,omitempty" json:"open-status,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

GetAccountParams defines parameters for GetAccount.

type GetAccountParamsOpenStatus

type GetAccountParamsOpenStatus string

GetAccountParamsOpenStatus defines parameters for GetAccount.

type GetAccountResponse

type GetAccountResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyAccountDetailResponseV2
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
}

func ParseGetAccountResponse

func ParseGetAccountResponse(rsp *http.Response) (*GetAccountResponse, error)

ParseGetAccountResponse parses an HTTP response from a GetAccountWithResponse call

func (GetAccountResponse) Status

func (r GetAccountResponse) Status() string

Status returns HTTPResponse.Status

func (GetAccountResponse) StatusCode

func (r GetAccountResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetBalanceForAccountParams

type GetBalanceForAccountParams struct {
	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

GetBalanceForAccountParams defines parameters for GetBalanceForAccount.

type GetBalanceForAccountResponse

type GetBalanceForAccountResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyBalanceResponse
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
}

func ParseGetBalanceForAccountResponse

func ParseGetBalanceForAccountResponse(rsp *http.Response) (*GetBalanceForAccountResponse, error)

ParseGetBalanceForAccountResponse parses an HTTP response from a GetBalanceForAccountWithResponse call

func (GetBalanceForAccountResponse) Status

Status returns HTTPResponse.Status

func (GetBalanceForAccountResponse) StatusCode

func (r GetBalanceForAccountResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetBillingForAccountParams

type GetBillingForAccountParams struct {
	// Constrain the request to records with effective time at or before this date/time.  If absent defaults to current date/time.  Format is aligned to DateTimeString common type
	NewestTime *NewestTime `form:"newest-time,omitempty" json:"newest-time,omitempty"`

	// Constrain the request to records with effective time at or after this date/time. If absent defaults to newest-time minus 12 months.  Format is aligned to DateTimeString common type
	OldestTime *OldestTime `form:"oldest-time,omitempty" json:"oldest-time,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

GetBillingForAccountParams defines parameters for GetBillingForAccount.

type GetBillingForAccountResponse

type GetBillingForAccountResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyBillingListResponse
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseGetBillingForAccountResponse

func ParseGetBillingForAccountResponse(rsp *http.Response) (*GetBillingForAccountResponse, error)

ParseGetBillingForAccountResponse parses an HTTP response from a GetBillingForAccountWithResponse call

func (GetBillingForAccountResponse) Status

Status returns HTTPResponse.Status

func (GetBillingForAccountResponse) StatusCode

func (r GetBillingForAccountResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetConcessionsParams

type GetConcessionsParams struct {
	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

GetConcessionsParams defines parameters for GetConcessions.

type GetConcessionsResponse

type GetConcessionsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyConcessionsResponse
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
}

func ParseGetConcessionsResponse

func ParseGetConcessionsResponse(rsp *http.Response) (*GetConcessionsResponse, error)

ParseGetConcessionsResponse parses an HTTP response from a GetConcessionsWithResponse call

func (GetConcessionsResponse) Status

func (r GetConcessionsResponse) Status() string

Status returns HTTPResponse.Status

func (GetConcessionsResponse) StatusCode

func (r GetConcessionsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetDERForServicePointParams

type GetDERForServicePointParams struct {
	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

GetDERForServicePointParams defines parameters for GetDERForServicePoint.

type GetDERForServicePointResponse

type GetDERForServicePointResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyDerDetailResponse
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
}

func ParseGetDERForServicePointResponse

func ParseGetDERForServicePointResponse(rsp *http.Response) (*GetDERForServicePointResponse, error)

ParseGetDERForServicePointResponse parses an HTTP response from a GetDERForServicePointWithResponse call

func (GetDERForServicePointResponse) Status

Status returns HTTPResponse.Status

func (GetDERForServicePointResponse) StatusCode

func (r GetDERForServicePointResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetInvoicesForAccountParams

type GetInvoicesForAccountParams struct {
	// Constrain the request to records with issue date at or before this date.  If absent defaults to current date.  Format is aligned to DateString common type
	NewestDate *NewestDateInvoices `form:"newest-date,omitempty" json:"newest-date,omitempty"`

	// Constrain the request to records with issue date at or after this date. If absent defaults to newest-date minus 24 months.  Format is aligned to DateString common type
	OldestDate *OldestDateInvoices `form:"oldest-date,omitempty" json:"oldest-date,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

GetInvoicesForAccountParams defines parameters for GetInvoicesForAccount.

type GetInvoicesForAccountResponse

type GetInvoicesForAccountResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyInvoiceListResponse
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseGetInvoicesForAccountResponse

func ParseGetInvoicesForAccountResponse(rsp *http.Response) (*GetInvoicesForAccountResponse, error)

ParseGetInvoicesForAccountResponse parses an HTTP response from a GetInvoicesForAccountWithResponse call

func (GetInvoicesForAccountResponse) Status

Status returns HTTPResponse.Status

func (GetInvoicesForAccountResponse) StatusCode

func (r GetInvoicesForAccountResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetPaymentScheduleParams

type GetPaymentScheduleParams struct {
	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

GetPaymentScheduleParams defines parameters for GetPaymentSchedule.

type GetPaymentScheduleResponse

type GetPaymentScheduleResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyPaymentScheduleResponse
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
}

func ParseGetPaymentScheduleResponse

func ParseGetPaymentScheduleResponse(rsp *http.Response) (*GetPaymentScheduleResponse, error)

ParseGetPaymentScheduleResponse parses an HTTP response from a GetPaymentScheduleWithResponse call

func (GetPaymentScheduleResponse) Status

Status returns HTTPResponse.Status

func (GetPaymentScheduleResponse) StatusCode

func (r GetPaymentScheduleResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetPlanParams

type GetPlanParams struct {
	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`
}

GetPlanParams defines parameters for GetPlan.

type GetPlanResponse

type GetPlanResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyPlanResponse
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
}

func ParseGetPlanResponse

func ParseGetPlanResponse(rsp *http.Response) (*GetPlanResponse, error)

ParseGetPlanResponse parses an HTTP response from a GetPlanWithResponse call

func (GetPlanResponse) Status

func (r GetPlanResponse) Status() string

Status returns HTTPResponse.Status

func (GetPlanResponse) StatusCode

func (r GetPlanResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetServicePointParams

type GetServicePointParams struct {
	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

GetServicePointParams defines parameters for GetServicePoint.

type GetServicePointResponse

type GetServicePointResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyServicePointDetailResponse
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
}

func ParseGetServicePointResponse

func ParseGetServicePointResponse(rsp *http.Response) (*GetServicePointResponse, error)

ParseGetServicePointResponse parses an HTTP response from a GetServicePointWithResponse call

func (GetServicePointResponse) Status

func (r GetServicePointResponse) Status() string

Status returns HTTPResponse.Status

func (GetServicePointResponse) StatusCode

func (r GetServicePointResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetUsageForServicePointParams

type GetUsageForServicePointParams struct {
	// Constrain the request to records with effective date at or after this date. If absent defaults to newest-date minus 24 months.  Format is aligned to DateString common type
	OldestDate *OldestDate `form:"oldest-date,omitempty" json:"oldest-date,omitempty"`

	// Constrain the request to records with effective date at or before this date.  If absent defaults to current date.  Format is aligned to DateString common type
	NewestDate *NewestDate `form:"newest-date,omitempty" json:"newest-date,omitempty"`

	// Type of interval reads. Any one of the valid values for this field can be supplied. If absent defaults to NONE
	IntervalReads *GetUsageForServicePointParamsIntervalReads `form:"interval-reads,omitempty" json:"interval-reads,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

GetUsageForServicePointParams defines parameters for GetUsageForServicePoint.

type GetUsageForServicePointParamsIntervalReads

type GetUsageForServicePointParamsIntervalReads string

GetUsageForServicePointParamsIntervalReads defines parameters for GetUsageForServicePoint.

type GetUsageForServicePointResponse

type GetUsageForServicePointResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyUsageListResponse
	JSON400      *ErrorListResponse
	JSON404      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseGetUsageForServicePointResponse

func ParseGetUsageForServicePointResponse(rsp *http.Response) (*GetUsageForServicePointResponse, error)

ParseGetUsageForServicePointResponse parses an HTTP response from a GetUsageForServicePointWithResponse call

func (GetUsageForServicePointResponse) Status

Status returns HTTPResponse.Status

func (GetUsageForServicePointResponse) StatusCode

func (r GetUsageForServicePointResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type HttpRequestDoer

type HttpRequestDoer interface {
	Do(req *http.Request) (*http.Response, error)
}

Doer performs HTTP requests.

The standard http.Client implements this interface.

type IntervalReads

type IntervalReads string

IntervalReads defines model for interval-reads.

const (
	FULL  IntervalReads = "FULL"
	MIN30 IntervalReads = "MIN_30"
	NONE  IntervalReads = "NONE"
)

Defines values for IntervalReads.

type InvoiceList

type InvoiceList = EnergyInvoiceListResponse

InvoiceList defines model for invoiceList.

type Links struct {
	// Fully qualified link that generated the current response document
	Self string `json:"self"`
}

Links defines model for Links.

type LinksPaginated

type LinksPaginated struct {
	// URI to the first page of this set. Mandatory if this response is not the first page
	First *string `json:"first,omitempty"`

	// URI to the last page of this set. Mandatory if this response is not the last page
	Last *string `json:"last,omitempty"`

	// URI to the next page of this set. Mandatory if this response is not the last page
	Next *string `json:"next,omitempty"`

	// URI to the previous page of this set. Mandatory if this response is not the first page
	Prev *string `json:"prev,omitempty"`

	// Fully qualified link that generated the current response document
	Self string `json:"self"`
}

LinksPaginated defines model for LinksPaginated.

type ListAccountsParams

type ListAccountsParams struct {
	// Used to filter results according to open/closed status. Values can be OPEN, CLOSED or ALL. If absent then ALL is assumed
	OpenStatus *ListAccountsParamsOpenStatus `form:"open-status,omitempty" json:"open-status,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListAccountsParams defines parameters for ListAccounts.

type ListAccountsParamsOpenStatus

type ListAccountsParamsOpenStatus string

ListAccountsParamsOpenStatus defines parameters for ListAccounts.

type ListAccountsResponse

type ListAccountsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyAccountListResponseV2
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListAccountsResponse

func ParseListAccountsResponse(rsp *http.Response) (*ListAccountsResponse, error)

ParseListAccountsResponse parses an HTTP response from a ListAccountsWithResponse call

func (ListAccountsResponse) Status

func (r ListAccountsResponse) Status() string

Status returns HTTPResponse.Status

func (ListAccountsResponse) StatusCode

func (r ListAccountsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListBalancesBulkParams

type ListBalancesBulkParams struct {
	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListBalancesBulkParams defines parameters for ListBalancesBulk.

type ListBalancesBulkResponse

type ListBalancesBulkResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyBalanceListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListBalancesBulkResponse

func ParseListBalancesBulkResponse(rsp *http.Response) (*ListBalancesBulkResponse, error)

ParseListBalancesBulkResponse parses an HTTP response from a ListBalancesBulkWithResponse call

func (ListBalancesBulkResponse) Status

func (r ListBalancesBulkResponse) Status() string

Status returns HTTPResponse.Status

func (ListBalancesBulkResponse) StatusCode

func (r ListBalancesBulkResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListBalancesForAccountsJSONRequestBody

type ListBalancesForAccountsJSONRequestBody AccountIdList

ListBalancesForAccountsJSONRequestBody defines body for ListBalancesForAccounts for application/json ContentType.

type ListBalancesForAccountsParams

type ListBalancesForAccountsParams struct {
	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListBalancesForAccountsParams defines parameters for ListBalancesForAccounts.

type ListBalancesForAccountsResponse

type ListBalancesForAccountsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyBalanceListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListBalancesForAccountsResponse

func ParseListBalancesForAccountsResponse(rsp *http.Response) (*ListBalancesForAccountsResponse, error)

ParseListBalancesForAccountsResponse parses an HTTP response from a ListBalancesForAccountsWithResponse call

func (ListBalancesForAccountsResponse) Status

Status returns HTTPResponse.Status

func (ListBalancesForAccountsResponse) StatusCode

func (r ListBalancesForAccountsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListBillingBulkParams

type ListBillingBulkParams struct {
	// Constrain the request to records with effective time at or before this date/time.  If absent defaults to current date/time.  Format is aligned to DateTimeString common type
	NewestTime *NewestTime `form:"newest-time,omitempty" json:"newest-time,omitempty"`

	// Constrain the request to records with effective time at or after this date/time. If absent defaults to newest-time minus 12 months.  Format is aligned to DateTimeString common type
	OldestTime *OldestTime `form:"oldest-time,omitempty" json:"oldest-time,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListBillingBulkParams defines parameters for ListBillingBulk.

type ListBillingBulkResponse

type ListBillingBulkResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyBillingListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListBillingBulkResponse

func ParseListBillingBulkResponse(rsp *http.Response) (*ListBillingBulkResponse, error)

ParseListBillingBulkResponse parses an HTTP response from a ListBillingBulkWithResponse call

func (ListBillingBulkResponse) Status

func (r ListBillingBulkResponse) Status() string

Status returns HTTPResponse.Status

func (ListBillingBulkResponse) StatusCode

func (r ListBillingBulkResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListBillingForAccountsJSONRequestBody

type ListBillingForAccountsJSONRequestBody AccountIdList

ListBillingForAccountsJSONRequestBody defines body for ListBillingForAccounts for application/json ContentType.

type ListBillingForAccountsParams

type ListBillingForAccountsParams struct {
	// Constrain the request to records with effective time at or before this date/time.  If absent defaults to current date/time.  Format is aligned to DateTimeString common type
	NewestTime *NewestTime `form:"newest-time,omitempty" json:"newest-time,omitempty"`

	// Constrain the request to records with effective time at or after this date/time. If absent defaults to newest-time minus 12 months.  Format is aligned to DateTimeString common type
	OldestTime *OldestTime `form:"oldest-time,omitempty" json:"oldest-time,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListBillingForAccountsParams defines parameters for ListBillingForAccounts.

type ListBillingForAccountsResponse

type ListBillingForAccountsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyBillingListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListBillingForAccountsResponse

func ParseListBillingForAccountsResponse(rsp *http.Response) (*ListBillingForAccountsResponse, error)

ParseListBillingForAccountsResponse parses an HTTP response from a ListBillingForAccountsWithResponse call

func (ListBillingForAccountsResponse) Status

Status returns HTTPResponse.Status

func (ListBillingForAccountsResponse) StatusCode

func (r ListBillingForAccountsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListDERBulkParams

type ListDERBulkParams struct {
	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListDERBulkParams defines parameters for ListDERBulk.

type ListDERBulkResponse

type ListDERBulkResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyDerListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListDERBulkResponse

func ParseListDERBulkResponse(rsp *http.Response) (*ListDERBulkResponse, error)

ParseListDERBulkResponse parses an HTTP response from a ListDERBulkWithResponse call

func (ListDERBulkResponse) Status

func (r ListDERBulkResponse) Status() string

Status returns HTTPResponse.Status

func (ListDERBulkResponse) StatusCode

func (r ListDERBulkResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListDERForServicePointsJSONRequestBody

type ListDERForServicePointsJSONRequestBody ServicePointIdList

ListDERForServicePointsJSONRequestBody defines body for ListDERForServicePoints for application/json ContentType.

type ListDERForServicePointsParams

type ListDERForServicePointsParams struct {
	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListDERForServicePointsParams defines parameters for ListDERForServicePoints.

type ListDERForServicePointsResponse

type ListDERForServicePointsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyDerListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListDERForServicePointsResponse

func ParseListDERForServicePointsResponse(rsp *http.Response) (*ListDERForServicePointsResponse, error)

ParseListDERForServicePointsResponse parses an HTTP response from a ListDERForServicePointsWithResponse call

func (ListDERForServicePointsResponse) Status

Status returns HTTPResponse.Status

func (ListDERForServicePointsResponse) StatusCode

func (r ListDERForServicePointsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListInvoicesBulkParams

type ListInvoicesBulkParams struct {
	// Constrain the request to records with issue date at or before this date.  If absent defaults to current date.  Format is aligned to DateString common type
	NewestDate *NewestDateInvoices `form:"newest-date,omitempty" json:"newest-date,omitempty"`

	// Constrain the request to records with issue date at or after this date. If absent defaults to newest-date minus 24 months.  Format is aligned to DateString common type
	OldestDate *OldestDateInvoices `form:"oldest-date,omitempty" json:"oldest-date,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListInvoicesBulkParams defines parameters for ListInvoicesBulk.

type ListInvoicesBulkResponse

type ListInvoicesBulkResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyInvoiceListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListInvoicesBulkResponse

func ParseListInvoicesBulkResponse(rsp *http.Response) (*ListInvoicesBulkResponse, error)

ParseListInvoicesBulkResponse parses an HTTP response from a ListInvoicesBulkWithResponse call

func (ListInvoicesBulkResponse) Status

func (r ListInvoicesBulkResponse) Status() string

Status returns HTTPResponse.Status

func (ListInvoicesBulkResponse) StatusCode

func (r ListInvoicesBulkResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListInvoicesForAccountsJSONRequestBody

type ListInvoicesForAccountsJSONRequestBody AccountIdList

ListInvoicesForAccountsJSONRequestBody defines body for ListInvoicesForAccounts for application/json ContentType.

type ListInvoicesForAccountsParams

type ListInvoicesForAccountsParams struct {
	// Constrain the request to records with issue date at or before this date.  If absent defaults to current date.  Format is aligned to DateString common type
	NewestDate *NewestDateInvoices `form:"newest-date,omitempty" json:"newest-date,omitempty"`

	// Constrain the request to records with issue date at or after this date. If absent defaults to newest-date minus 24 months.  Format is aligned to DateString common type
	OldestDate *OldestDateInvoices `form:"oldest-date,omitempty" json:"oldest-date,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListInvoicesForAccountsParams defines parameters for ListInvoicesForAccounts.

type ListInvoicesForAccountsResponse

type ListInvoicesForAccountsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyInvoiceListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListInvoicesForAccountsResponse

func ParseListInvoicesForAccountsResponse(rsp *http.Response) (*ListInvoicesForAccountsResponse, error)

ParseListInvoicesForAccountsResponse parses an HTTP response from a ListInvoicesForAccountsWithResponse call

func (ListInvoicesForAccountsResponse) Status

Status returns HTTPResponse.Status

func (ListInvoicesForAccountsResponse) StatusCode

func (r ListInvoicesForAccountsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListPlansParams

type ListPlansParams struct {
	// Used to filter results on the type field.  Any one of the valid values for this field can be supplied plus 'ALL'.  If absent defaults to 'ALL'
	Type *ListPlansParamsType `form:"type,omitempty" json:"type,omitempty"`

	// Used to filter results on the fuelType field.  Any one of the valid values for this field can be supplied plus 'ALL'.  If absent defaults to 'ALL'
	FuelType *ListPlansParamsFuelType `form:"fuelType,omitempty" json:"fuelType,omitempty"`

	// Allows for the filtering of plans based on whether the current time is within the period of time defined as effective by the effectiveFrom and effectiveTo fields. Valid values are ‘CURRENT’, ‘FUTURE’ and ‘ALL’. If absent defaults to 'CURRENT'
	Effective *ListPlansParamsEffective `form:"effective,omitempty" json:"effective,omitempty"`

	// Only include plans that have been updated after the specified date and time.  If absent defaults to include all plans
	UpdatedSince *string `form:"updated-since,omitempty" json:"updated-since,omitempty"`

	// Used to filter results on the brand field.  If absent defaults to include all plans
	Brand *string `form:"brand,omitempty" json:"brand,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`
}

ListPlansParams defines parameters for ListPlans.

type ListPlansParamsEffective

type ListPlansParamsEffective string

ListPlansParamsEffective defines parameters for ListPlans.

type ListPlansParamsFuelType

type ListPlansParamsFuelType string

ListPlansParamsFuelType defines parameters for ListPlans.

type ListPlansParamsType

type ListPlansParamsType string

ListPlansParamsType defines parameters for ListPlans.

type ListPlansResponse

type ListPlansResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyPlanListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListPlansResponse

func ParseListPlansResponse(rsp *http.Response) (*ListPlansResponse, error)

ParseListPlansResponse parses an HTTP response from a ListPlansWithResponse call

func (ListPlansResponse) Status

func (r ListPlansResponse) Status() string

Status returns HTTPResponse.Status

func (ListPlansResponse) StatusCode

func (r ListPlansResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListServicePointsParams

type ListServicePointsParams struct {
	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListServicePointsParams defines parameters for ListServicePoints.

type ListServicePointsResponse

type ListServicePointsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyServicePointListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListServicePointsResponse

func ParseListServicePointsResponse(rsp *http.Response) (*ListServicePointsResponse, error)

ParseListServicePointsResponse parses an HTTP response from a ListServicePointsWithResponse call

func (ListServicePointsResponse) Status

func (r ListServicePointsResponse) Status() string

Status returns HTTPResponse.Status

func (ListServicePointsResponse) StatusCode

func (r ListServicePointsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListUsageBulkParams

type ListUsageBulkParams struct {
	// Type of interval reads. Any one of the valid values for this field can be supplied. If absent defaults to NONE
	IntervalReads *ListUsageBulkParamsIntervalReads `form:"interval-reads,omitempty" json:"interval-reads,omitempty"`

	// Constrain the request to records with effective date at or after this date. If absent defaults to newest-date minus 24 months.  Format is aligned to DateString common type
	OldestDate *OldestDate `form:"oldest-date,omitempty" json:"oldest-date,omitempty"`

	// Constrain the request to records with effective date at or before this date.  If absent defaults to current date.  Format is aligned to DateString common type
	NewestDate *NewestDate `form:"newest-date,omitempty" json:"newest-date,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListUsageBulkParams defines parameters for ListUsageBulk.

type ListUsageBulkParamsIntervalReads

type ListUsageBulkParamsIntervalReads string

ListUsageBulkParamsIntervalReads defines parameters for ListUsageBulk.

type ListUsageBulkResponse

type ListUsageBulkResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyUsageListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListUsageBulkResponse

func ParseListUsageBulkResponse(rsp *http.Response) (*ListUsageBulkResponse, error)

ParseListUsageBulkResponse parses an HTTP response from a ListUsageBulkWithResponse call

func (ListUsageBulkResponse) Status

func (r ListUsageBulkResponse) Status() string

Status returns HTTPResponse.Status

func (ListUsageBulkResponse) StatusCode

func (r ListUsageBulkResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListUsageForServicePointsJSONRequestBody

type ListUsageForServicePointsJSONRequestBody ServicePointIdList

ListUsageForServicePointsJSONRequestBody defines body for ListUsageForServicePoints for application/json ContentType.

type ListUsageForServicePointsParams

type ListUsageForServicePointsParams struct {
	// Constrain the request to records with effective date at or after this date. If absent defaults to newest-date minus 24 months.  Format is aligned to DateString common type
	OldestDate *OldestDate `form:"oldest-date,omitempty" json:"oldest-date,omitempty"`

	// Constrain the request to records with effective date at or before this date.  If absent defaults to current date.  Format is aligned to DateString common type
	NewestDate *NewestDate `form:"newest-date,omitempty" json:"newest-date,omitempty"`

	// Type of interval reads. Any one of the valid values for this field can be supplied. If absent defaults to NONE
	IntervalReads *ListUsageForServicePointsParamsIntervalReads `form:"interval-reads,omitempty" json:"interval-reads,omitempty"`

	// Page of results to request (standard pagination)
	Page *Page `form:"page,omitempty" json:"page,omitempty"`

	// Page size to request.  Default is 25 (standard pagination)
	PageSize *PageSize `form:"page-size,omitempty" json:"page-size,omitempty"`

	// Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)
	XV XV `json:"x-v"`

	// Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.
	XMinV *XMinV `json:"x-min-v,omitempty"`

	// An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *XFapiInteractionId `json:"x-fapi-interaction-id,omitempty"`

	// The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**.  Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *XFapiAuthDate `json:"x-fapi-auth-date,omitempty"`

	// The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *XFapiCustomerIpAddress `json:"x-fapi-customer-ip-address,omitempty"`

	// The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls.  Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *XCdsClientHeaders `json:"x-cds-client-headers,omitempty"`
}

ListUsageForServicePointsParams defines parameters for ListUsageForServicePoints.

type ListUsageForServicePointsParamsIntervalReads

type ListUsageForServicePointsParamsIntervalReads string

ListUsageForServicePointsParamsIntervalReads defines parameters for ListUsageForServicePoints.

type ListUsageForServicePointsResponse

type ListUsageForServicePointsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *EnergyUsageListResponse
	JSON400      *ErrorListResponse
	JSON406      *ErrorListResponse
	JSON422      *ErrorListResponse
}

func ParseListUsageForServicePointsResponse

func ParseListUsageForServicePointsResponse(rsp *http.Response) (*ListUsageForServicePointsResponse, error)

ParseListUsageForServicePointsResponse parses an HTTP response from a ListUsageForServicePointsWithResponse call

func (ListUsageForServicePointsResponse) Status

Status returns HTTPResponse.Status

func (ListUsageForServicePointsResponse) StatusCode

func (r ListUsageForServicePointsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type Meta

type Meta = map[string]interface{}

Meta defines model for Meta.

type MetaPaginated

type MetaPaginated struct {
	// The total number of pages in the full set. See [pagination](#pagination).
	TotalPages int `json:"totalPages"`

	// The total number of records in the full set. See [pagination](#pagination).
	TotalRecords int `json:"totalRecords"`
}

MetaPaginated defines model for MetaPaginated.

type NewestDate

type NewestDate = string

NewestDate defines model for newest-date.

type NewestDateInvoices

type NewestDateInvoices = string

NewestDateInvoices defines model for newest-date-invoices.

type NewestTime

type NewestTime = string

NewestTime defines model for newest-time.

type OldestDate

type OldestDate = string

OldestDate defines model for oldest-date.

type OldestDateInvoices

type OldestDateInvoices = string

OldestDateInvoices defines model for oldest-date-invoices.

type OldestTime

type OldestTime = string

OldestTime defines model for oldest-time.

type OpenStatus

type OpenStatus string

OpenStatus defines model for open-status.

const (
	OpenStatusALL    OpenStatus = "ALL"
	OpenStatusCLOSED OpenStatus = "CLOSED"
	OpenStatusOPEN   OpenStatus = "OPEN"
)

Defines values for OpenStatus.

type Page

type Page = int

Page defines model for page.

type PageSize

type PageSize = int

PageSize defines model for page-size.

type PlanDetail

type PlanDetail = EnergyPlanResponse

PlanDetail defines model for planDetail.

type PlanList

type PlanList = EnergyPlanListResponse

PlanList defines model for planList.

type RequestEditorFn

type RequestEditorFn func(ctx context.Context, req *http.Request) error

RequestEditorFn is the function signature for the RequestEditor callback function

type ServicePointDetail

type ServicePointDetail = EnergyServicePointDetailResponse

ServicePointDetail defines model for servicePointDetail.

type ServicePointId

type ServicePointId = string

ServicePointId defines model for servicePointId.

type ServicePointIdList

type ServicePointIdList struct {
	Data struct {
		// Array of specific servicePointIds to obtain data for
		ServicePointIds []string `json:"servicePointIds"`
	} `json:"data"`
	Meta Meta `json:"meta"`
}

ServicePointIdList defines model for servicePointIdList.

type ServicePointList

type ServicePointList = EnergyServicePointListResponse

ServicePointList defines model for servicePointList.

type UsageList

type UsageList = EnergyUsageListResponse

UsageList defines model for usageList.

type XCdsClientHeaders

type XCdsClientHeaders = string

XCdsClientHeaders defines model for x-cds-client-headers.

type XFapiAuthDate

type XFapiAuthDate = string

XFapiAuthDate defines model for x-fapi-auth-date.

type XFapiCustomerIpAddress

type XFapiCustomerIpAddress = string

XFapiCustomerIpAddress defines model for x-fapi-customer-ip-address.

type XFapiInteractionId

type XFapiInteractionId = string

XFapiInteractionId defines model for x-fapi-interaction-id.

type XMinV

type XMinV = string

XMinV defines model for x-min-v.

type XV

type XV = string

XV defines model for x-v.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL