cdrCommon

package
v0.5.3 Latest Latest
Warning

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

Go to latest
Published: Jan 21, 2026 License: MIT Imports: 14 Imported by: 0

Documentation

Overview

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

Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.4.1 DO NOT EDIT.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetSwagger

func GetSwagger() (swagger *openapi3.T, err error)

GetSwagger returns the Swagger specification corresponding to the generated code in this file. The external references of Swagger specification are resolved. The logic of resolving external references is tightly connected to "import-mapping" feature. Externally referenced files must be embedded in the corresponding golang packages. Urls can be supported but this task was out of the scope.

func NewGetCustomerDetailRequest

func NewGetCustomerDetailRequest(server string, params *GetCustomerDetailParams) (*http.Request, error)

NewGetCustomerDetailRequest generates requests for GetCustomerDetail

func NewGetCustomerRequest

func NewGetCustomerRequest(server string, params *GetCustomerParams) (*http.Request, error)

NewGetCustomerRequest generates requests for GetCustomer

func NewGetOutagesRequest

func NewGetOutagesRequest(server string, params *GetOutagesParams) (*http.Request, error)

NewGetOutagesRequest generates requests for GetOutages

func NewGetStatusRequest

func NewGetStatusRequest(server string, params *GetStatusParams) (*http.Request, error)

NewGetStatusRequest generates requests for GetStatus

func PathToRawSpec

func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error)

Constructs a synthetic filesystem for resolving external references when loading openapi specifications.

func RegisterHandlers

func RegisterHandlers(router EchoRouter, si ServerInterface)

RegisterHandlers adds each server route to the EchoRouter.

func RegisterHandlersWithBaseURL

func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL string)

Registers handlers, and prepends BaseURL to the paths, so that the paths can be served under a prefix.

Types

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) GetCustomer

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

func (*Client) GetCustomerDetail

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

func (*Client) GetOutages

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

func (*Client) GetStatus

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

type ClientInterface

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

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

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

	// GetStatus request
	GetStatus(ctx context.Context, params *GetStatusParams, 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) GetCustomerDetailWithResponse

func (c *ClientWithResponses) GetCustomerDetailWithResponse(ctx context.Context, params *GetCustomerDetailParams, reqEditors ...RequestEditorFn) (*GetCustomerDetailResponse, error)

GetCustomerDetailWithResponse request returning *GetCustomerDetailResponse

func (*ClientWithResponses) GetCustomerWithResponse

func (c *ClientWithResponses) GetCustomerWithResponse(ctx context.Context, params *GetCustomerParams, reqEditors ...RequestEditorFn) (*GetCustomerResponse, error)

GetCustomerWithResponse request returning *GetCustomerResponse

func (*ClientWithResponses) GetOutagesWithResponse

func (c *ClientWithResponses) GetOutagesWithResponse(ctx context.Context, params *GetOutagesParams, reqEditors ...RequestEditorFn) (*GetOutagesResponse, error)

GetOutagesWithResponse request returning *GetOutagesResponse

func (*ClientWithResponses) GetStatusWithResponse

func (c *ClientWithResponses) GetStatusWithResponse(ctx context.Context, params *GetStatusParams, reqEditors ...RequestEditorFn) (*GetStatusResponse, error)

GetStatusWithResponse request returning *GetStatusResponse

type ClientWithResponsesInterface

type ClientWithResponsesInterface interface {
	// GetCustomerWithResponse request
	GetCustomerWithResponse(ctx context.Context, params *GetCustomerParams, reqEditors ...RequestEditorFn) (*GetCustomerResponse, error)

	// GetCustomerDetailWithResponse request
	GetCustomerDetailWithResponse(ctx context.Context, params *GetCustomerDetailParams, reqEditors ...RequestEditorFn) (*GetCustomerDetailResponse, error)

	// GetOutagesWithResponse request
	GetOutagesWithResponse(ctx context.Context, params *GetOutagesParams, reqEditors ...RequestEditorFn) (*GetOutagesResponse, error)

	// GetStatusWithResponse request
	GetStatusWithResponse(ctx context.Context, params *GetStatusParams, reqEditors ...RequestEditorFn) (*GetStatusResponse, error)
}

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

type CommonEmailAddress

type CommonEmailAddress struct {
	// Address A correctly formatted email address, as defined by the addr-spec format in **[[RFC5322]](#nref-RFC5322)**.
	Address string `json:"address"`

	// IsPreferred May be `true` for one and only one email record in the collection. Denotes the default email address.
	IsPreferred *bool `json:"isPreferred,omitempty"`

	// Purpose The purpose for the email, as specified by the customer.
	Purpose CommonEmailAddressPurpose `json:"purpose"`
}

CommonEmailAddress defines model for CommonEmailAddress.

type CommonEmailAddressPurpose

type CommonEmailAddressPurpose string

CommonEmailAddressPurpose The purpose for the email, as specified by the customer.

const (
	CommonEmailAddressPurposeHOME        CommonEmailAddressPurpose = "HOME"
	CommonEmailAddressPurposeOTHER       CommonEmailAddressPurpose = "OTHER"
	CommonEmailAddressPurposeUNSPECIFIED CommonEmailAddressPurpose = "UNSPECIFIED"
	CommonEmailAddressPurposeWORK        CommonEmailAddressPurpose = "WORK"
)

Defines values for CommonEmailAddressPurpose.

type CommonOrganisation

type CommonOrganisation struct {
	// Abn Australian Business Number for the organisation.
	Abn *string `json:"abn,omitempty"`

	// Acn Australian Company Number for the organisation. Required only if an ACN is applicable for the organisation type.
	Acn *string `json:"acn,omitempty"`

	// AgentFirstName The first name of the individual providing access on behalf of the organisation. For people with single names this field need not be present. The single name should be in the _lastName_ field.
	AgentFirstName *string `json:"agentFirstName,omitempty"`

	// AgentLastName The last name of the individual providing access on behalf of the organisation. For people with single names, the single name should be in this field.
	AgentLastName string `json:"agentLastName"`

	// AgentRole The role of the individual identified as the agent who is providing authorisation. Expected to be used for display. Default to "Unspecified" if the role is not known.
	AgentRole string `json:"agentRole"`

	// BusinessName Name of the organisation.
	BusinessName string `json:"businessName"`

	// EstablishmentDate The date the organisation described was established.
	EstablishmentDate *string `json:"establishmentDate,omitempty"`

	// IndustryCode A valid [ANZSIC](http://www.abs.gov.au/ANZSIC) code for the organisation. If the industry code held by the data holder is not one of the supported [ANZSIC](http://www.abs.gov.au/ANZSIC) versions, then it must not be supplied.
	IndustryCode *string `json:"industryCode,omitempty"`

	// IndustryCodeVersion The applicable [ANZSIC](http://www.abs.gov.au/ANZSIC) release version of the industry code provided. Should only be supplied if _industryCode_ is also supplied. If _industryCode_ is supplied but _industryCodeVersion_ is absent, default is `ANZSIC_1292.0_2006_V2.0`.
	IndustryCodeVersion *CommonOrganisationIndustryCodeVersion `json:"industryCodeVersion,omitempty"`

	// IsACNCRegistered `true` if registered with the ACNC. `false` if not. Absent or `null` if not confirmed.
	IsACNCRegistered *bool `json:"isACNCRegistered,omitempty"`

	// LastUpdateTime The date and time that this record was last updated by the customer. If no update has occurred then this date should reflect the initial creation date for the data.
	LastUpdateTime *string `json:"lastUpdateTime,omitempty"`

	// LegalName Legal name, if different to the business name.
	LegalName *string `json:"legalName,omitempty"`

	// OrganisationType Legal organisation type.
	OrganisationType CommonOrganisationOrganisationType `json:"organisationType"`

	// RegisteredCountry Enumeration with values from [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country codes. Assumed to be `AUS` if absent.
	RegisteredCountry *string `json:"registeredCountry,omitempty"`

	// ShortName Short name used for communication, if different to the business name.
	ShortName *string `json:"shortName,omitempty"`
}

CommonOrganisation defines model for CommonOrganisation.

type CommonOrganisationDetailV2

type CommonOrganisationDetailV2 struct {
	// Abn Australian Business Number for the organisation.
	Abn *string `json:"abn,omitempty"`

	// Acn Australian Company Number for the organisation. Required only if an ACN is applicable for the organisation type.
	Acn *string `json:"acn,omitempty"`

	// AgentFirstName The first name of the individual providing access on behalf of the organisation. For people with single names this field need not be present. The single name should be in the _lastName_ field.
	AgentFirstName *string `json:"agentFirstName,omitempty"`

	// AgentLastName The last name of the individual providing access on behalf of the organisation. For people with single names, the single name should be in this field.
	AgentLastName string `json:"agentLastName"`

	// AgentRole The role of the individual identified as the agent who is providing authorisation. Expected to be used for display. Default to "Unspecified" if the role is not known.
	AgentRole string `json:"agentRole"`

	// BusinessName Name of the organisation.
	BusinessName string `json:"businessName"`

	// EstablishmentDate The date the organisation described was established.
	EstablishmentDate *string `json:"establishmentDate,omitempty"`

	// IndustryCode A valid [ANZSIC](http://www.abs.gov.au/ANZSIC) code for the organisation. If the industry code held by the data holder is not one of the supported [ANZSIC](http://www.abs.gov.au/ANZSIC) versions, then it must not be supplied.
	IndustryCode *string `json:"industryCode,omitempty"`

	// IndustryCodeVersion The applicable [ANZSIC](http://www.abs.gov.au/ANZSIC) release version of the industry code provided. Should only be supplied if _industryCode_ is also supplied. If _industryCode_ is supplied but _industryCodeVersion_ is absent, default is `ANZSIC_1292.0_2006_V2.0`.
	IndustryCodeVersion *CommonOrganisationDetailV2IndustryCodeVersion `json:"industryCodeVersion,omitempty"`

	// IsACNCRegistered `true` if registered with the ACNC. `false` if not. Absent or `null` if not confirmed.
	IsACNCRegistered *bool `json:"isACNCRegistered,omitempty"`

	// LastUpdateTime The date and time that this record was last updated by the customer. If no update has occurred then this date should reflect the initial creation date for the data.
	LastUpdateTime *string `json:"lastUpdateTime,omitempty"`

	// LegalName Legal name, if different to the business name.
	LegalName *string `json:"legalName,omitempty"`

	// OrganisationType Legal organisation type.
	OrganisationType CommonOrganisationDetailV2OrganisationType `json:"organisationType"`

	// PhysicalAddresses Array is mandatory but may be empty if no valid addresses are held. One and only one address may have the purpose of `REGISTERED`. Zero or one, and no more than one, record may have the purpose of `MAIL`. If zero then the `REGISTERED` address is to be used for mail.
	PhysicalAddresses []CommonPhysicalAddressWithPurpose `json:"physicalAddresses"`

	// RegisteredCountry Enumeration with values from [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country codes. Assumed to be `AUS` if absent.
	RegisteredCountry *string `json:"registeredCountry,omitempty"`

	// ShortName Short name used for communication, if different to the business name.
	ShortName *string `json:"shortName,omitempty"`
}

CommonOrganisationDetailV2 defines model for CommonOrganisationDetailV2.

type CommonOrganisationDetailV2AllOf

type CommonOrganisationDetailV2AllOf struct {
	// PhysicalAddresses Array is mandatory but may be empty if no valid addresses are held. One and only one address may have the purpose of `REGISTERED`. Zero or one, and no more than one, record may have the purpose of `MAIL`. If zero then the `REGISTERED` address is to be used for mail.
	PhysicalAddresses []CommonPhysicalAddressWithPurpose `json:"physicalAddresses"`
}

CommonOrganisationDetailV2AllOf defines model for CommonOrganisationDetailV2_allOf.

type CommonOrganisationDetailV2IndustryCodeVersion

type CommonOrganisationDetailV2IndustryCodeVersion string

CommonOrganisationDetailV2IndustryCodeVersion The applicable [ANZSIC](http://www.abs.gov.au/ANZSIC) release version of the industry code provided. Should only be supplied if _industryCode_ is also supplied. If _industryCode_ is supplied but _industryCodeVersion_ is absent, default is `ANZSIC_1292.0_2006_V2.0`.

const (
	CommonOrganisationDetailV2IndustryCodeVersionANZSIC129202006V10 CommonOrganisationDetailV2IndustryCodeVersion = "ANZSIC_1292.0_2006_V1.0"
	CommonOrganisationDetailV2IndustryCodeVersionANZSIC129202006V20 CommonOrganisationDetailV2IndustryCodeVersion = "ANZSIC_1292.0_2006_V2.0"
)

Defines values for CommonOrganisationDetailV2IndustryCodeVersion.

type CommonOrganisationDetailV2OrganisationType

type CommonOrganisationDetailV2OrganisationType string

CommonOrganisationDetailV2OrganisationType Legal organisation type.

const (
	CommonOrganisationDetailV2OrganisationTypeCOMPANY          CommonOrganisationDetailV2OrganisationType = "COMPANY"
	CommonOrganisationDetailV2OrganisationTypeGOVERNMENTENTITY CommonOrganisationDetailV2OrganisationType = "GOVERNMENT_ENTITY"
	CommonOrganisationDetailV2OrganisationTypeOTHER            CommonOrganisationDetailV2OrganisationType = "OTHER"
	CommonOrganisationDetailV2OrganisationTypePARTNERSHIP      CommonOrganisationDetailV2OrganisationType = "PARTNERSHIP"
	CommonOrganisationDetailV2OrganisationTypeSOLETRADER       CommonOrganisationDetailV2OrganisationType = "SOLE_TRADER"
	CommonOrganisationDetailV2OrganisationTypeTRUST            CommonOrganisationDetailV2OrganisationType = "TRUST"
)

Defines values for CommonOrganisationDetailV2OrganisationType.

type CommonOrganisationIndustryCodeVersion

type CommonOrganisationIndustryCodeVersion string

CommonOrganisationIndustryCodeVersion The applicable [ANZSIC](http://www.abs.gov.au/ANZSIC) release version of the industry code provided. Should only be supplied if _industryCode_ is also supplied. If _industryCode_ is supplied but _industryCodeVersion_ is absent, default is `ANZSIC_1292.0_2006_V2.0`.

const (
	CommonOrganisationIndustryCodeVersionANZSIC129202006V10 CommonOrganisationIndustryCodeVersion = "ANZSIC_1292.0_2006_V1.0"
	CommonOrganisationIndustryCodeVersionANZSIC129202006V20 CommonOrganisationIndustryCodeVersion = "ANZSIC_1292.0_2006_V2.0"
)

Defines values for CommonOrganisationIndustryCodeVersion.

type CommonOrganisationOrganisationType

type CommonOrganisationOrganisationType string

CommonOrganisationOrganisationType Legal organisation type.

const (
	CommonOrganisationOrganisationTypeCOMPANY          CommonOrganisationOrganisationType = "COMPANY"
	CommonOrganisationOrganisationTypeGOVERNMENTENTITY CommonOrganisationOrganisationType = "GOVERNMENT_ENTITY"
	CommonOrganisationOrganisationTypeOTHER            CommonOrganisationOrganisationType = "OTHER"
	CommonOrganisationOrganisationTypePARTNERSHIP      CommonOrganisationOrganisationType = "PARTNERSHIP"
	CommonOrganisationOrganisationTypeSOLETRADER       CommonOrganisationOrganisationType = "SOLE_TRADER"
	CommonOrganisationOrganisationTypeTRUST            CommonOrganisationOrganisationType = "TRUST"
)

Defines values for CommonOrganisationOrganisationType.

type CommonPAFAddress

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

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

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

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

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

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

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

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

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

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

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

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

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

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

	// State 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"`

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

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

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

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

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

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

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

CommonPAFAddress 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 CommonPerson

type CommonPerson struct {
	// FirstName For people with single names this field need not be present. The single name should be in the _lastName_ field. Where a data holder cannot determine first and middle names from a collection of given names, a single string representing all given names **MAY** be provided.
	FirstName *string `json:"firstName,omitempty"`

	// LastName For people with single names, the single name should be in this field.
	LastName string `json:"lastName"`

	// LastUpdateTime The date and time that this record was last updated by the customer. If no update has occurred then this date should reflect the initial creation date for the data.
	LastUpdateTime *string `json:"lastUpdateTime,omitempty"`

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

	// OccupationCode Value is a valid **[[ANZSCO]](#iref-ANZSCO)** Standard Occupation classification code. If the occupation code held by the data holder is not one of the supported **[[ANZSCO]](#iref-ANZSCO)** versions, then it must not be supplied.
	OccupationCode *string `json:"occupationCode,omitempty"`

	// OccupationCodeVersion The applicable **[[ANZSCO]](#iref-ANZSCO)** release version of the occupation code provided. Mandatory if an _occupationCode_ is supplied. If _occupationCode_ is supplied but _occupationCodeVersion_ is absent, default is `ANZSCO_1220.0_2013_V1.2`.
	OccupationCodeVersion *CommonPersonOccupationCodeVersion `json:"occupationCodeVersion,omitempty"`

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

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

CommonPerson defines model for CommonPerson.

type CommonPersonDetailV2

type CommonPersonDetailV2 struct {
	// EmailAddresses May be empty.
	EmailAddresses []CommonEmailAddress `json:"emailAddresses"`

	// FirstName For people with single names this field need not be present. The single name should be in the _lastName_ field. Where a data holder cannot determine first and middle names from a collection of given names, a single string representing all given names **MAY** be provided.
	FirstName *string `json:"firstName,omitempty"`

	// LastName For people with single names, the single name should be in this field.
	LastName string `json:"lastName"`

	// LastUpdateTime The date and time that this record was last updated by the customer. If no update has occurred then this date should reflect the initial creation date for the data.
	LastUpdateTime *string `json:"lastUpdateTime,omitempty"`

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

	// OccupationCode Value is a valid **[[ANZSCO]](#iref-ANZSCO)** Standard Occupation classification code. If the occupation code held by the data holder is not one of the supported **[[ANZSCO]](#iref-ANZSCO)** versions, then it must not be supplied.
	OccupationCode *string `json:"occupationCode,omitempty"`

	// OccupationCodeVersion The applicable **[[ANZSCO]](#iref-ANZSCO)** release version of the occupation code provided. Mandatory if an _occupationCode_ is supplied. If _occupationCode_ is supplied but _occupationCodeVersion_ is absent, default is `ANZSCO_1220.0_2013_V1.2`.
	OccupationCodeVersion *CommonPersonDetailV2OccupationCodeVersion `json:"occupationCodeVersion,omitempty"`

	// PhoneNumbers Array is mandatory but may be empty if no phone numbers are held.
	PhoneNumbers []CommonPhoneNumber `json:"phoneNumbers"`

	// PhysicalAddresses Array is mandatory but may be empty if no valid addresses are held. One and only one address may have the purpose of `REGISTERED`. Zero or one, and no more than one, record may have the purpose of `MAIL`. If zero then the `REGISTERED` address is to be used for mail.
	PhysicalAddresses []CommonPhysicalAddressWithPurpose `json:"physicalAddresses"`

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

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

CommonPersonDetailV2 defines model for CommonPersonDetailV2.

type CommonPersonDetailV2AllOf

type CommonPersonDetailV2AllOf struct {
	// EmailAddresses May be empty.
	EmailAddresses []CommonEmailAddress `json:"emailAddresses"`

	// PhoneNumbers Array is mandatory but may be empty if no phone numbers are held.
	PhoneNumbers []CommonPhoneNumber `json:"phoneNumbers"`

	// PhysicalAddresses Array is mandatory but may be empty if no valid addresses are held. One and only one address may have the purpose of `REGISTERED`. Zero or one, and no more than one, record may have the purpose of `MAIL`. If zero then the `REGISTERED` address is to be used for mail.
	PhysicalAddresses []CommonPhysicalAddressWithPurpose `json:"physicalAddresses"`
}

CommonPersonDetailV2AllOf defines model for CommonPersonDetailV2_allOf.

type CommonPersonDetailV2OccupationCodeVersion

type CommonPersonDetailV2OccupationCodeVersion string

CommonPersonDetailV2OccupationCodeVersion The applicable **[[ANZSCO]](#iref-ANZSCO)** release version of the occupation code provided. Mandatory if an _occupationCode_ is supplied. If _occupationCode_ is supplied but _occupationCodeVersion_ is absent, default is `ANZSCO_1220.0_2013_V1.2`.

const (
	CommonPersonDetailV2OccupationCodeVersionANZSCO122002006V10 CommonPersonDetailV2OccupationCodeVersion = "ANZSCO_1220.0_2006_V1.0"
	CommonPersonDetailV2OccupationCodeVersionANZSCO122002006V11 CommonPersonDetailV2OccupationCodeVersion = "ANZSCO_1220.0_2006_V1.1"
	CommonPersonDetailV2OccupationCodeVersionANZSCO122002013V12 CommonPersonDetailV2OccupationCodeVersion = "ANZSCO_1220.0_2013_V1.2"
	CommonPersonDetailV2OccupationCodeVersionANZSCO122002013V13 CommonPersonDetailV2OccupationCodeVersion = "ANZSCO_1220.0_2013_V1.3"
)

Defines values for CommonPersonDetailV2OccupationCodeVersion.

type CommonPersonOccupationCodeVersion

type CommonPersonOccupationCodeVersion string

CommonPersonOccupationCodeVersion The applicable **[[ANZSCO]](#iref-ANZSCO)** release version of the occupation code provided. Mandatory if an _occupationCode_ is supplied. If _occupationCode_ is supplied but _occupationCodeVersion_ is absent, default is `ANZSCO_1220.0_2013_V1.2`.

const (
	CommonPersonOccupationCodeVersionANZSCO122002006V10 CommonPersonOccupationCodeVersion = "ANZSCO_1220.0_2006_V1.0"
	CommonPersonOccupationCodeVersionANZSCO122002006V11 CommonPersonOccupationCodeVersion = "ANZSCO_1220.0_2006_V1.1"
	CommonPersonOccupationCodeVersionANZSCO122002013V12 CommonPersonOccupationCodeVersion = "ANZSCO_1220.0_2013_V1.2"
	CommonPersonOccupationCodeVersionANZSCO122002013V13 CommonPersonOccupationCodeVersion = "ANZSCO_1220.0_2013_V1.3"
)

Defines values for CommonPersonOccupationCodeVersion.

type CommonPhoneNumber

type CommonPhoneNumber struct {
	// AreaCode Required for non Mobile Phones, if field is present and refers to Australian code - the leading `0` should be omitted.
	AreaCode *string `json:"areaCode,omitempty"`

	// CountryCode If absent, assumed to be Australia (`+61`). The `+` should be included.
	CountryCode *string `json:"countryCode,omitempty"`

	// Extension An extension number (if applicable).
	Extension *string `json:"extension,omitempty"`

	// FullNumber Fully formatted phone number with country code, area code, number and extension incorporated. Formatted according to section 5.1.4. of **[[RFC3966]](#iref-RFC3966)**.
	FullNumber string `json:"fullNumber"`

	// IsPreferred May be `true` for one and only one entry to indicate the preferred phone number. Assumed to be `false` if not present.
	IsPreferred *bool `json:"isPreferred,omitempty"`

	// Number The actual phone number, with leading zeros as appropriate.
	Number string `json:"number"`

	// Purpose The purpose of the number as specified by the customer.
	Purpose CommonPhoneNumberPurpose `json:"purpose"`
}

CommonPhoneNumber defines model for CommonPhoneNumber.

type CommonPhoneNumberPurpose

type CommonPhoneNumberPurpose string

CommonPhoneNumberPurpose The purpose of the number as specified by the customer.

const (
	CommonPhoneNumberPurposeHOME          CommonPhoneNumberPurpose = "HOME"
	CommonPhoneNumberPurposeINTERNATIONAL CommonPhoneNumberPurpose = "INTERNATIONAL"
	CommonPhoneNumberPurposeMOBILE        CommonPhoneNumberPurpose = "MOBILE"
	CommonPhoneNumberPurposeOTHER         CommonPhoneNumberPurpose = "OTHER"
	CommonPhoneNumberPurposeUNSPECIFIED   CommonPhoneNumberPurpose = "UNSPECIFIED"
	CommonPhoneNumberPurposeWORK          CommonPhoneNumberPurpose = "WORK"
)

Defines values for CommonPhoneNumberPurpose.

type CommonPhysicalAddress

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

	// Paf 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"`

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

CommonPhysicalAddress defines model for CommonPhysicalAddress.

type CommonPhysicalAddressAddressUType

type CommonPhysicalAddressAddressUType string

CommonPhysicalAddressAddressUType The type of address object present.

const (
	CommonPhysicalAddressAddressUTypePaf    CommonPhysicalAddressAddressUType = "paf"
	CommonPhysicalAddressAddressUTypeSimple CommonPhysicalAddressAddressUType = "simple"
)

Defines values for CommonPhysicalAddressAddressUType.

type CommonPhysicalAddressWithPurpose

type CommonPhysicalAddressWithPurpose struct {
	// AddressUType The type of address object present.
	AddressUType CommonPhysicalAddressWithPurposeAddressUType `json:"addressUType"`

	// Paf 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"`

	// Purpose Enumeration of values indicating the purpose of the physical address.
	Purpose CommonPhysicalAddressWithPurposePurpose `json:"purpose"`

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

CommonPhysicalAddressWithPurpose defines model for CommonPhysicalAddressWithPurpose.

type CommonPhysicalAddressWithPurposeAddressUType

type CommonPhysicalAddressWithPurposeAddressUType string

CommonPhysicalAddressWithPurposeAddressUType The type of address object present.

const (
	CommonPhysicalAddressWithPurposeAddressUTypePaf    CommonPhysicalAddressWithPurposeAddressUType = "paf"
	CommonPhysicalAddressWithPurposeAddressUTypeSimple CommonPhysicalAddressWithPurposeAddressUType = "simple"
)

Defines values for CommonPhysicalAddressWithPurposeAddressUType.

type CommonPhysicalAddressWithPurposeAllOf

type CommonPhysicalAddressWithPurposeAllOf struct {
	// Purpose Enumeration of values indicating the purpose of the physical address.
	Purpose CommonPhysicalAddressWithPurposeAllOfPurpose `json:"purpose"`
}

CommonPhysicalAddressWithPurposeAllOf defines model for CommonPhysicalAddressWithPurpose_allOf.

type CommonPhysicalAddressWithPurposeAllOfPurpose

type CommonPhysicalAddressWithPurposeAllOfPurpose string

CommonPhysicalAddressWithPurposeAllOfPurpose Enumeration of values indicating the purpose of the physical address.

const (
	CommonPhysicalAddressWithPurposeAllOfPurposeMAIL       CommonPhysicalAddressWithPurposeAllOfPurpose = "MAIL"
	CommonPhysicalAddressWithPurposeAllOfPurposeOTHER      CommonPhysicalAddressWithPurposeAllOfPurpose = "OTHER"
	CommonPhysicalAddressWithPurposeAllOfPurposePHYSICAL   CommonPhysicalAddressWithPurposeAllOfPurpose = "PHYSICAL"
	CommonPhysicalAddressWithPurposeAllOfPurposeREGISTERED CommonPhysicalAddressWithPurposeAllOfPurpose = "REGISTERED"
	CommonPhysicalAddressWithPurposeAllOfPurposeWORK       CommonPhysicalAddressWithPurposeAllOfPurpose = "WORK"
)

Defines values for CommonPhysicalAddressWithPurposeAllOfPurpose.

type CommonPhysicalAddressWithPurposePurpose

type CommonPhysicalAddressWithPurposePurpose string

CommonPhysicalAddressWithPurposePurpose Enumeration of values indicating the purpose of the physical address.

const (
	CommonPhysicalAddressWithPurposePurposeMAIL       CommonPhysicalAddressWithPurposePurpose = "MAIL"
	CommonPhysicalAddressWithPurposePurposeOTHER      CommonPhysicalAddressWithPurposePurpose = "OTHER"
	CommonPhysicalAddressWithPurposePurposePHYSICAL   CommonPhysicalAddressWithPurposePurpose = "PHYSICAL"
	CommonPhysicalAddressWithPurposePurposeREGISTERED CommonPhysicalAddressWithPurposePurpose = "REGISTERED"
	CommonPhysicalAddressWithPurposePurposeWORK       CommonPhysicalAddressWithPurposePurpose = "WORK"
)

Defines values for CommonPhysicalAddressWithPurposePurpose.

type CommonSimpleAddress

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

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

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

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

	// Country 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"`

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

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

	// State 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"`
}

CommonSimpleAddress Required if _addressUType_ is set to `simple`.

type DiscoveryOutage

type DiscoveryOutage struct {
	// Duration Planned duration of the outage. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax).
	Duration string `json:"duration"`

	// Explanation Provides an explanation of the current outage that can be displayed to an end customer.
	Explanation string `json:"explanation"`

	// IsPartial Flag that indicates, if present and set to `true`, that the outage is only partial meaning that only a subset of normally available endpoints will be affected by the outage.
	IsPartial *bool `json:"isPartial,omitempty"`

	// OutageTime Date and time that the outage is scheduled to begin.
	OutageTime string `json:"outageTime"`
}

DiscoveryOutage defines model for DiscoveryOutage.

type EchoRouter

type EchoRouter interface {
	CONNECT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	DELETE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	GET(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	HEAD(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	OPTIONS(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	PATCH(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	POST(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	PUT(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
	TRACE(path string, h echo.HandlerFunc, m ...echo.MiddlewareFunc) *echo.Route
}

This is a simple interface which specifies echo.Route addition functions which are present on both echo.Echo and echo.Group, since we want to allow using either of them for path registration

type ErrorV2

type ErrorV2 struct {
	// Code 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"`

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

	// Meta Additional data for customised error codes.
	Meta *ErrorV2Meta `json:"meta,omitempty"`

	// Title 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"`
}

ErrorV2 defines model for ErrorV2.

type ErrorV2Meta

type ErrorV2Meta struct {
	// Urn 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"`
}

ErrorV2Meta Additional data for customised error codes.

type GetCustomerDetailParams

type GetCustomerDetailParams struct {
	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId 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 *string `json:"x-fapi-interaction-id,omitempty"`

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

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. 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 *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders 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 Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

GetCustomerDetailParams defines parameters for GetCustomerDetail.

type GetCustomerDetailResponse

type GetCustomerDetailResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ResponseCommonCustomerDetailV2
	JSON400      *ResponseErrorListV2
	JSON406      *ResponseErrorListV2
}

func ParseGetCustomerDetailResponse

func ParseGetCustomerDetailResponse(rsp *http.Response) (*GetCustomerDetailResponse, error)

ParseGetCustomerDetailResponse parses an HTTP response from a GetCustomerDetailWithResponse call

func (GetCustomerDetailResponse) Status

func (r GetCustomerDetailResponse) Status() string

Status returns HTTPResponse.Status

func (GetCustomerDetailResponse) StatusCode

func (r GetCustomerDetailResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetCustomerParams

type GetCustomerParams struct {
	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId 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 *string `json:"x-fapi-interaction-id,omitempty"`

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

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. 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 *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders 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 Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

GetCustomerParams defines parameters for GetCustomer.

type GetCustomerResponse

type GetCustomerResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ResponseCommonCustomer
	JSON400      *ResponseErrorListV2
	JSON406      *ResponseErrorListV2
}

func ParseGetCustomerResponse

func ParseGetCustomerResponse(rsp *http.Response) (*GetCustomerResponse, error)

ParseGetCustomerResponse parses an HTTP response from a GetCustomerWithResponse call

func (GetCustomerResponse) Status

func (r GetCustomerResponse) Status() string

Status returns HTTPResponse.Status

func (GetCustomerResponse) StatusCode

func (r GetCustomerResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetOutagesParams

type GetOutagesParams struct {
	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`
}

GetOutagesParams defines parameters for GetOutages.

type GetOutagesResponse

type GetOutagesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ResponseDiscoveryOutagesList
	JSON400      *ResponseErrorListV2
	JSON406      *ResponseErrorListV2
}

func ParseGetOutagesResponse

func ParseGetOutagesResponse(rsp *http.Response) (*GetOutagesResponse, error)

ParseGetOutagesResponse parses an HTTP response from a GetOutagesWithResponse call

func (GetOutagesResponse) Status

func (r GetOutagesResponse) Status() string

Status returns HTTPResponse.Status

func (GetOutagesResponse) StatusCode

func (r GetOutagesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetStatusParams

type GetStatusParams struct {
	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`
}

GetStatusParams defines parameters for GetStatus.

type GetStatusResponse

type GetStatusResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *ResponseCommonDiscoveryStatus
	JSON400      *ResponseErrorListV2
	JSON406      *ResponseErrorListV2
}

func ParseGetStatusResponse

func ParseGetStatusResponse(rsp *http.Response) (*GetStatusResponse, error)

ParseGetStatusResponse parses an HTTP response from a GetStatusWithResponse call

func (GetStatusResponse) Status

func (r GetStatusResponse) Status() string

Status returns HTTPResponse.Status

func (GetStatusResponse) StatusCode

func (r GetStatusResponse) 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 Links struct {
	// Self Fully qualified link that generated the current response document.
	Self string `json:"self"`
}

Links defines model for Links.

type Meta

type Meta = map[string]interface{}

Meta defines model for Meta.

type RequestEditorFn

type RequestEditorFn func(ctx context.Context, req *http.Request) error

RequestEditorFn is the function signature for the RequestEditor callback function

type ResponseCommonCustomer

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

ResponseCommonCustomer defines model for ResponseCommonCustomer.

type ResponseCommonCustomerData

type ResponseCommonCustomerData struct {
	// CustomerUType The type of customer object that is present.
	CustomerUType ResponseCommonCustomerDataCustomerUType `json:"customerUType"`
	Organisation  *CommonOrganisation                     `json:"organisation,omitempty"`
	Person        *CommonPerson                           `json:"person,omitempty"`
}

ResponseCommonCustomerData defines model for ResponseCommonCustomer_data.

type ResponseCommonCustomerDataCustomerUType

type ResponseCommonCustomerDataCustomerUType string

ResponseCommonCustomerDataCustomerUType The type of customer object that is present.

const (
	ResponseCommonCustomerDataCustomerUTypeOrganisation ResponseCommonCustomerDataCustomerUType = "organisation"
	ResponseCommonCustomerDataCustomerUTypePerson       ResponseCommonCustomerDataCustomerUType = "person"
)

Defines values for ResponseCommonCustomerDataCustomerUType.

type ResponseCommonCustomerDetailV2

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

ResponseCommonCustomerDetailV2 defines model for ResponseCommonCustomerDetailV2.

type ResponseCommonCustomerDetailV2Data

type ResponseCommonCustomerDetailV2Data struct {
	// CustomerUType The type of customer object that is present.
	CustomerUType ResponseCommonCustomerDetailV2DataCustomerUType `json:"customerUType"`
	Organisation  *CommonOrganisationDetailV2                     `json:"organisation,omitempty"`
	Person        *CommonPersonDetailV2                           `json:"person,omitempty"`
}

ResponseCommonCustomerDetailV2Data defines model for ResponseCommonCustomerDetailV2_data.

type ResponseCommonCustomerDetailV2DataCustomerUType

type ResponseCommonCustomerDetailV2DataCustomerUType string

ResponseCommonCustomerDetailV2DataCustomerUType The type of customer object that is present.

const (
	ResponseCommonCustomerDetailV2DataCustomerUTypeOrganisation ResponseCommonCustomerDetailV2DataCustomerUType = "organisation"
	ResponseCommonCustomerDetailV2DataCustomerUTypePerson       ResponseCommonCustomerDetailV2DataCustomerUType = "person"
)

Defines values for ResponseCommonCustomerDetailV2DataCustomerUType.

type ResponseCommonDiscoveryStatus

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

ResponseCommonDiscoveryStatus defines model for ResponseCommonDiscoveryStatus.

type ResponseCommonDiscoveryStatusData

type ResponseCommonDiscoveryStatusData struct {
	// DetectionTime The date and time that the current outage was detected. Should only be present if the status property is `PARTIAL_FAILURE` or `UNAVAILABLE`.
	DetectionTime *string `json:"detectionTime,omitempty"`

	// ExpectedResolutionTime The date and time that full service is expected to resume (if known). Should not be present if the status property has a value of `OK`.
	ExpectedResolutionTime *string `json:"expectedResolutionTime,omitempty"`

	// Explanation Provides an explanation of the current outage that can be displayed to an end customer. Mandatory if the status property is any value other than `OK`.
	Explanation *string `json:"explanation,omitempty"`

	// Status Enumeration with values: <ul><li>`OK`: (implementation is fully functional).<li>`PARTIAL_FAILURE`: (one or more endpoints are unexpectedly unavailable).<li>`UNAVAILABLE`: (the full implementation is unexpectedly unavailable).<li>`SCHEDULED_OUTAGE`: (an advertised outage is in effect).</ul>
	Status ResponseCommonDiscoveryStatusDataStatus `json:"status"`

	// UpdateTime The date and time that this status was last updated by the Data Holder.
	UpdateTime string `json:"updateTime"`
}

ResponseCommonDiscoveryStatusData defines model for ResponseCommonDiscoveryStatus_data.

type ResponseCommonDiscoveryStatusDataStatus

type ResponseCommonDiscoveryStatusDataStatus string

ResponseCommonDiscoveryStatusDataStatus Enumeration with values: <ul><li>`OK`: (implementation is fully functional).<li>`PARTIAL_FAILURE`: (one or more endpoints are unexpectedly unavailable).<li>`UNAVAILABLE`: (the full implementation is unexpectedly unavailable).<li>`SCHEDULED_OUTAGE`: (an advertised outage is in effect).</ul>

const (
	OK              ResponseCommonDiscoveryStatusDataStatus = "OK"
	PARTIALFAILURE  ResponseCommonDiscoveryStatusDataStatus = "PARTIAL_FAILURE"
	SCHEDULEDOUTAGE ResponseCommonDiscoveryStatusDataStatus = "SCHEDULED_OUTAGE"
	UNAVAILABLE     ResponseCommonDiscoveryStatusDataStatus = "UNAVAILABLE"
)

Defines values for ResponseCommonDiscoveryStatusDataStatus.

type ResponseDiscoveryOutagesList

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

ResponseDiscoveryOutagesList defines model for ResponseDiscoveryOutagesList.

type ResponseDiscoveryOutagesListData

type ResponseDiscoveryOutagesListData struct {
	// Outages List of scheduled outages. Property is mandatory but may contain an empty list if no outages are scheduled.
	Outages []DiscoveryOutage `json:"outages"`
}

ResponseDiscoveryOutagesListData defines model for ResponseDiscoveryOutagesList_data.

type ResponseErrorListV2

type ResponseErrorListV2 struct {
	// Errors List of errors.
	Errors []ErrorV2 `json:"errors"`
}

ResponseErrorListV2 defines model for ResponseErrorListV2.

type ServerInterface

type ServerInterface interface {
	// Get Customer
	// (GET /common/customer)
	GetCustomer(ctx echo.Context, params GetCustomerParams) error
	// Get Customer Detail
	// (GET /common/customer/detail)
	GetCustomerDetail(ctx echo.Context, params GetCustomerDetailParams) error
	// Get Outages
	// (GET /discovery/outages)
	GetOutages(ctx echo.Context, params GetOutagesParams) error
	// Get Status
	// (GET /discovery/status)
	GetStatus(ctx echo.Context, params GetStatusParams) error
}

ServerInterface represents all server handlers.

type ServerInterfaceWrapper

type ServerInterfaceWrapper struct {
	Handler ServerInterface
}

ServerInterfaceWrapper converts echo contexts to parameters.

func (*ServerInterfaceWrapper) GetCustomer

func (w *ServerInterfaceWrapper) GetCustomer(ctx echo.Context) error

GetCustomer converts echo context to params.

func (*ServerInterfaceWrapper) GetCustomerDetail

func (w *ServerInterfaceWrapper) GetCustomerDetail(ctx echo.Context) error

GetCustomerDetail converts echo context to params.

func (*ServerInterfaceWrapper) GetOutages

func (w *ServerInterfaceWrapper) GetOutages(ctx echo.Context) error

GetOutages converts echo context to params.

func (*ServerInterfaceWrapper) GetStatus

func (w *ServerInterfaceWrapper) GetStatus(ctx echo.Context) error

GetStatus converts echo context to params.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL