types

package
v0.0.0-...-3d0e729 Latest Latest
Warning

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

Go to latest
Published: Apr 14, 2019 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

View Source
const (
	NameSpaceDNSSEC10 = "urn:ietf:params:xml:ns:secDNS-1.0"
	NameSpaceDNSSEC11 = "urn:ietf:params:xml:ns:secDNS-1.1"
)

Name space constant for the extension.

View Source
const (
	NameSpaceContact = "urn:ietf:params:xml:ns:contact-1.0"
	NameSpaceDomain  = "urn:ietf:params:xml:ns:domain-1.0"
	NameSpaceEPP10   = "urn:ietf:params:xml:ns:epp-1.0"
	NameSpaceHost    = "urn:ietf:params:xml:ns:host-1.0"
)

Name space constants for the default name spaces

View Source
const (
	NameSpaceIIS12 = "urn:se:iis:xml:epp:iis-1.2"
)

Name space constant for the extension.

Variables

This section is empty.

Functions

func AliasToNameSpace

func AliasToNameSpace(alias string) string

AliasToNameSpace space will return the full name sapce for a name space alias.

Types

type Address

type Address struct {
	Street        []string `xml:"street,omitempty"`
	City          string   `xml:"city"`
	StateProvince string   `xml:"sp,omitempty"`
	PostalCode    string   `xml:"pc,omitempty"`
	CountryCode   string   `xml:"cc"`
}

Address represents a full address for postal information.

type AuthInfo

type AuthInfo struct {
	Password  string `xml:"pw,omitempty"`
	Extension string `xml:"ext,omitempty"`
}

AuthInfo represents authentication information used when transferring domain.

type CheckContact

type CheckContact struct {
	Name   CheckName `xml:"id"`
	Reason string    `xml:"reason,omitempty"`
}

CheckContact represents the data from a contact check command name.

type CheckName

type CheckName struct {
	Value     string `xml:",chardata"`
	Available bool   `xml:"avail,attr"`
}

CheckName represents the name in a check command.

type CheckType

type CheckType struct {
	Name   CheckName `xml:"name"`
	Reason string    `xml:"reason,omitempty"`
}

CheckType represents the data from any kind of check command.

type Contact

type Contact struct {
	Name string `xml:",chardata"`
	Type string `xml:"type,attr"`
}

Contact represents a contact for a domain.

type ContactAddRemove

type ContactAddRemove struct {
	Status []ContactStatus `xml:"status"`
}

ContactAddRemove represents the fields that holds data to add or remove for a contact.

type ContactChange

type ContactChange struct {
	PostalInfo []PostalInfo `xml:"postalInfo,omitempty"`
	Voice      E164Type     `xml:"voice,omitempty"`
	Fax        E164Type     `xml:"fax,omitempty"`
	Email      string       `xml:"email,omitempty"`
	AuthInfo   AuthInfo     `xml:"authInfo,omitempty"`
	Disclose   Disclose     `xml:"disclose,omitempty,omitempty"`
}

ContactChange represents the data that may be changed while updating a contact.

type ContactCheck

type ContactCheck struct {
	Names []string `xml:"id"`
}

ContactCheck represents a check for contact(s).

type ContactCheckData

type ContactCheckData struct {
	Name []CheckContact `xml:"cd"`
}

ContactCheckData represents the data returned from a contact check command.

type ContactCheckDataType

type ContactCheckDataType struct {
	CheckData ContactCheckData `xml:"urn:ietf:params:xml:ns:contact-1.0 chkData"`
}

ContactCheckDataType represents contact check data.

type ContactCheckDataTypeIn

type ContactCheckDataTypeIn struct {
	CheckData ContactCheckData `xml:"chkData"`
}

ContactCheckDataTypeIn represents a namespace agnostic version of ContactCheckDataType

type ContactCheckType

type ContactCheckType struct {
	Check ContactCheck `xml:"urn:ietf:params:xml:ns:contact-1.0 command>check>check"`
}

ContactCheckType represents a contact check command.

type ContactCheckTypeIn

type ContactCheckTypeIn struct {
	Check ContactCheck `xml:"command>check>check"`
}

ContactCheckTypeIn represents a namespace agnostic version of ContactCheckType

type ContactCreate

type ContactCreate struct {
	ID         string       `xml:"id"`
	PostalInfo []PostalInfo `xml:"postalInfo"`
	Voice      E164Type     `xml:"voice,omitempty"`
	Fax        E164Type     `xml:"fax,omitempty"`
	Email      string       `xml:"email"`
	AuthInfo   AuthInfo     `xml:"authInfo"`
	Disclose   Disclose     `xml:"disclose,omitempty"`
}

ContactCreate represents a contact create command.

type ContactCreateData

type ContactCreateData struct {
	Name       string    `xml:"id"`
	CreateDate time.Time `xml:"crDate"`
}

ContactCreateData represents the data returned from a contact create command.

type ContactCreateDataType

type ContactCreateDataType struct {
	CreateData ContactCreateData `xml:"urn:ietf:params:xml:ns:contact-1.0 creData"`
}

ContactCreateDataType represents contact create data.

type ContactCreateDataTypeIn

type ContactCreateDataTypeIn struct {
	CreateData ContactCreateData `xml:"creData"`
}

ContactCreateDataTypeIn represents a namespace agnostic version of ContactCreateDataType

type ContactCreateType

type ContactCreateType struct {
	Create ContactCreate `xml:"urn:ietf:params:xml:ns:contact-1.0 command>create>create"`
}

ContactCreateType represents a contact create command.

type ContactCreateTypeIn

type ContactCreateTypeIn struct {
	Create ContactCreate `xml:"command>create>create"`
}

ContactCreateTypeIn represents a namespace agnostic version of ContactCreateType

type ContactDelete

type ContactDelete struct {
	Name string `xml:"id"`
}

ContactDelete represents a contact delete command.

type ContactDeleteType

type ContactDeleteType struct {
	Delete ContactDelete `xml:"urn:ietf:params:xml:ns:contact-1.0 command>delete>delete"`
}

ContactDeleteType represents a contact delete command.

type ContactDeleteTypeIn

type ContactDeleteTypeIn struct {
	Delete ContactDelete `xml:"command>delete>delete"`
}

ContactDeleteTypeIn represents a namespace agnostic version of ContactDeleteType

type ContactInfo

type ContactInfo struct {
	Name     string   `xml:"id"`
	AuthInfo AuthInfo `xml:"authInfo,omitempty"`
}

ContactInfo represents a contact info command.

type ContactInfoData

type ContactInfoData struct {
	Name         string          `xml:"id"`
	ROID         string          `xml:"roid"`
	Status       []ContactStatus `xml:"status"`
	PostalInfo   []PostalInfo    `xml:"postalInfo"`
	Voice        E164Type        `xml:"voice,omitempty"`
	Fax          E164Type        `xml:"fax,omitempty"`
	Email        string          `xml:"email"`
	ClientID     string          `xml:"clID"`
	CreateID     string          `xml:"crID"`
	CreateDate   time.Time       `xml:"crDate"`
	UpdateID     string          `xml:"upID,omitempty"`
	UpdateDate   time.Time       `xml:"upDate,omitempty"`
	TransferDate time.Time       `xml:"trDate,omitempty"`
	AuthInfo     AuthInfo        `xml:"authInfo,omitempty"`
	Disclose     Disclose        `xml:"disclose,omitempty"`
}

ContactInfoData represents the data returned from a contact info command.

type ContactInfoDataType

type ContactInfoDataType struct {
	InfoData ContactInfoData `xml:"urn:ietf:params:xml:ns:contact-1.0 infData"`
}

ContactInfoDataType represents contact info data.

type ContactInfoDataTypeIn

type ContactInfoDataTypeIn struct {
	InfoData ContactInfoData `xml:"infData"`
}

ContactInfoDataTypeIn represents a namespace agnostic version of ContactInfoDataType

type ContactInfoType

type ContactInfoType struct {
	Info ContactInfo `xml:"urn:ietf:params:xml:ns:contact-1.0 command>info>info"`
}

ContactInfoType represents a contact info command.

type ContactInfoTypeIn

type ContactInfoTypeIn struct {
	Info ContactInfo `xml:"command>info>info"`
}

ContactInfoTypeIn represents a namespace agnostic version of ContactInfoType

type ContactPendingActivationNotificationData

type ContactPendingActivationNotificationData struct {
	Name          PendingActivationNotificationName `xml:"id"`
	TransactionID string                            `xml:"paTRID"`
	Date          time.Time                         `xml:"paDate"`
}

ContactPendingActivationNotificationData represents the data returned from a contact pending activation notification command.

type ContactPendingActivationNotificationDataType

type ContactPendingActivationNotificationDataType struct {
	PendingActivationNotificationData ContactPendingActivationNotificationData `xml:"urn:ietf:params:xml:ns:contact-1.0 panData"`
}

ContactPendingActivationNotificationDataType represents contact pending activation notifiacation data.

type ContactPendingActivationNotificationDataTypeIn

type ContactPendingActivationNotificationDataTypeIn struct {
	PendingActivationNotificationData ContactPendingActivationNotificationData `xml:"panData"`
}

ContactPendingActivationNotificationDataTypeIn represents a namespace agnostic version of ContactPendingActivationNotificationDataType

type ContactStatus

type ContactStatus struct {
	Status            string            `xml:",chardata"`
	ContactStatusType ContactStatusType `xml:"s,attr"`
	Language          string            `xml:"lang,attr"`
}

ContactStatus represents statuses for a contact.

type ContactStatusType

type ContactStatusType string

ContactStatusType represents contact status types.

const (
	ContactStatusClientDeleteProhibited   ContactStatusType = "clientDeleteProhibited"
	ContactStatusClientTransferProhibited ContactStatusType = "clientTransferProhibited"
	ContactStatusClientUpdateProhibited   ContactStatusType = "clientUpdateProhibited"
	ContactStatusLinked                   ContactStatusType = "linked"
	ContactStatusOk                       ContactStatusType = "ok"
	ContactStatusPendingCreate            ContactStatusType = "pendingCreate"
	ContactStatusPendingDelete            ContactStatusType = "pendingDelete"
	ContactStatusPendingTransfer          ContactStatusType = "pendingTransfer"
	ContactStatusPendingUpdate            ContactStatusType = "pendingUpdate"
	ContactStatusServerDeleteProhibited   ContactStatusType = "serverDeleteProhibited"
	ContactStatusServerTransferProhibited ContactStatusType = "serverTransferProhibited"
	ContactStatusServerUpdateProhibited   ContactStatusType = "serverUpdateProhibited"
)

Constants representing contact status types.

type ContactTransfer

type ContactTransfer struct {
	Name     string   `xml:"id"`
	AuthInfo AuthInfo `xml:"authInfo,omitempty"`
}

ContactTransfer represents a contact transfer command.

type ContactTransferData

type ContactTransferData struct {
	Name           string                    `xml:"id"`
	TransferStatus ContactTransferStatusType `xml:"trStatus"`
	RequestingID   string                    `xml:"reID"`
	RequestingDate time.Time                 `xml:"reDate"`
	ActingID       string                    `xml:"acID"`
	ActingDate     time.Time                 `xml:"acDate"`
}

ContactTransferData represents the data returned from a contact transfer cmomand.

type ContactTransferDataType

type ContactTransferDataType struct {
	TransferData ContactTransferData `xml:"urn:ietf:params:xml:ns:contact-1.0 trnData"`
}

ContactTransferDataType represents contact transfer data.

type ContactTransferDataTypeIn

type ContactTransferDataTypeIn struct {
	TransferData ContactTransferData `xml:"trnData"`
}

ContactTransferDataTypeIn represents a namespace agnostic version of ContactTransferDataType

type ContactTransferStatusType

type ContactTransferStatusType string

ContactTransferStatusType represents available transaction statuses.

const (
	ContactTransferClientApproved  ContactTransferStatusType = "clientApproved"
	ContactTransferClientCancelled ContactTransferStatusType = "clientCancelled"
	ContactTransferClientRejected  ContactTransferStatusType = "clientRejected"
	ContactTransferPending         ContactTransferStatusType = "pending"
	ContactTransferServerApproved  ContactTransferStatusType = "serverApproved"
	ContactTransferServerCancelled ContactTransferStatusType = "serverCancelled"
)

Constants representing the string value of transaction status types.

type ContactTransferType

type ContactTransferType struct {
	Transfer ContactTransfer `xml:"urn:ietf:params:xml:ns:contact-1.0 command>transfer>transfer"`
}

ContactTransferType represents a contact transfer command.

type ContactTransferTypeIn

type ContactTransferTypeIn struct {
	Transfer ContactTransfer `xml:"command>transfer>transfer"`
}

ContactTransferTypeIn represents a namespace agnostic version of ContactTransferType

type ContactUpdate

type ContactUpdate struct {
	Name   string            `xml:"id"`
	Add    *ContactAddRemove `xml:"add,omitempty"`
	Remove *ContactAddRemove `xml:"rem,omitempty"`
	Change *ContactChange    `xml:"chg>name,omitempty"`
}

ContactUpdate represents a contact update command.

type ContactUpdateType

type ContactUpdateType struct {
	Update ContactUpdate `xml:"urn:ietf:params:xml:ns:contact-1.0 command>transfer>transfer"`
}

ContactUpdateType represents a contact update command.

type ContactUpdateTypeIn

type ContactUpdateTypeIn struct {
	Update ContactUpdate `xml:"command>transfer>transfer"`
}

ContactUpdateTypeIn represents a namespace agnostic version of ContactUpdateType

type DCP

type DCP struct {
	Access    DCPAccess    `xml:"access"`
	Statement DCPStatement `xml:"statement"`
	Expiry    *DCPExpiry   `xml:"expiry,omitempty"`
}

DCP (data collection policy) represents the policy declared in the greeting message.

type DCPAccess

type DCPAccess struct {
	All              *EmptyTag `xml:"all,omitempty"`
	None             *EmptyTag `xml:"none,omitempty"`
	Null             *EmptyTag `xml:"null,omitempty"`
	Other            *EmptyTag `xml:"other,omitempty"`
	Personal         *EmptyTag `xml:"personal,omitempty"`
	PersonalAndOther *EmptyTag `xml:"personalAndOther,omitempty"`
}

DCPAccess represents the access type.

type DCPExpiry

type DCPExpiry struct {
	Absolute *time.Time `xml:"absoulte"`
	Relative string     `xml:"relative,omitempty"` // Format "PnYnMnDTnHnMnS"
}

DCPExpiry represent DCP expiry.

type DCPOurs

type DCPOurs struct {
	RecipientDescription string `xml:"recDesc,omitempty"`
}

DCPOurs represents the description for DCP ours.

type DCPPurpose

type DCPPurpose struct {
	Admin   *EmptyTag `xml:"admin,omitempty"`
	Contact *EmptyTag `xml:"contact,omitempty"`
	Other   *EmptyTag `xml:"other,omitempty"`
	Prov    *EmptyTag `xml:"prov,omitempty"`
}

DCPPurpose represents a DCP purposes.

type DCPRecipient

type DCPRecipient struct {
	Other     *EmptyTag `xml:"other"`
	Ours      []DCPOurs `xml:"ours"`
	Public    *EmptyTag `xml:"public"`
	Same      *EmptyTag `xml:"same"`
	Unrelated *EmptyTag `xml:"unrelated"`
}

DCPRecipient represents a DCP recipient.

type DCPRetention

type DCPRetention struct {
	Business   *EmptyTag `xml:"business"`
	Indefinite *EmptyTag `xml:"indefinite"`
	Legal      *EmptyTag `xml:"legal"`
	None       *EmptyTag `xml:"none"`
	Stated     *EmptyTag `xml:"stated"`
}

DCPRetention represents a DCP retention.

type DCPStatement

type DCPStatement struct {
	Purpose   DCPPurpose   `xml:"purpose"`
	Recipient DCPRecipient `xml:"recipient"`
	Retention DCPRetention `xml:"retention"`
}

DCPStatement represent DCP statements.

type DNSSEC

type DNSSEC struct {
	KeyTag     uint           `xml:"keyTag"`
	Algorithm  uint           `xml:"alg"`
	DigestType uint           `xml:"digestType"`
	Digest     string         `xml:"digest"`
	KeyData    *DNSSECKeyData `xml:"keyData,omitempty"`
}

DNSSEC represents DNSSEC data.

type DNSSECExtensionCreateType

type DNSSECExtensionCreateType struct {
	Create DNSSECOrKeyData `xml:"urn:ietf:params:xml:ns:secDNS-1.1 command>extension>create"`
}

DNSSECExtensionCreateType implements extension for create from secDNS-1.1

type DNSSECExtensionCreateTypeIn

type DNSSECExtensionCreateTypeIn struct {
	Create DNSSECOrKeyData `xml:"command>extension>create"`
}

DNSSECExtensionCreateTypeIn represents a namespace agnostic version of DNSSECExtensionCreateType

type DNSSECExtensionInfoDataType

type DNSSECExtensionInfoDataType struct {
	InfoData DNSSECOrKeyData `xml:"urn:ietf:params:xml:ns:secDNS-1.1 infData"`
}

DNSSECExtensionInfoDataType represents extension for info data from secDNS-1.1

type DNSSECExtensionInfoDataTypeIn

type DNSSECExtensionInfoDataTypeIn struct {
	InfoData DNSSECOrKeyData `xml:"infData"`
}

DNSSECExtensionInfoDataTypeIn represents a namespace agnostic version of DNSSECExtensionInfoDataType

type DNSSECExtensionUpdate

type DNSSECExtensionUpdate struct {
	Remove                 DNSSECRemove    `xml:"rem,omitempty"`
	Add                    DNSSECOrKeyData `xml:"add,omitempty"`
	ChangeMaxSignatureLife int             `xml:"chg>maxSigLife,omitempty"`
	Urgent                 bool            `xml:"urgent,attr"`
}

DNSSECExtensionUpdate implements extension for update from secDNS-1.1

type DNSSECExtensionUpdateType

type DNSSECExtensionUpdateType struct {
	Update DNSSECExtensionUpdate `xml:"urn:ietf:params:xml:ns:secDNS-1.1 command>extension>update"`
}

DNSSECExtensionUpdateType implements extension for Update from secDNS-1.1

type DNSSECExtensionUpdateTypeIn

type DNSSECExtensionUpdateTypeIn struct {
	Update DNSSECExtensionUpdate `xml:"command>extension>update"`
}

DNSSECExtensionUpdateTypeIn represents a namespace agnostic version of DNSSECExtensionUpdateType

type DNSSECKeyData

type DNSSECKeyData struct {
	Flags     uint   `xml:"flags"`
	Protocol  uint   `xml:"protocol"`
	Algorithm uint   `xml:"alg"`
	PublicKey string `xml:"pubKey"`
}

DNSSECKeyData represents key data for DNSSEC.

type DNSSECOrKeyData

type DNSSECOrKeyData struct {
	MaxSignatureLife int             `xml:"maxSigLife,omitempty"`
	DNSSECData       []DNSSEC        `xml:"dsData"`
	KeyData          []DNSSECKeyData `xml:"keyData"`
}

DNSSECOrKeyData represents DNSSEC data or key data.

type DNSSECRemove

type DNSSECRemove struct {
	All        bool            `xml:"all,omitempty"`
	DNSSECdata []DNSSEC        `xml:"dsData"`
	KeyData    []DNSSECKeyData `xml:"keyData"`
}

DNSSECRemove represents remove block for DNSSEC extension.

type Disclose

type Disclose struct {
	Name         InternationalOrLocalType `xml:"name,omitempty"`
	Organization InternationalOrLocalType `xml:"org,omitempty"`
	Address      InternationalOrLocalType `xml:"addr,omitempty"`
	Voice        bool                     `xml:"voice,omitempty"`
	Fax          bool                     `xml:"fax,omitempty"`
	Email        bool                     `xml:"email,omitempty"`
	Flag         bool                     `xml:"flag,attr"`
}

Disclose represents fields that may be disclosed to the public.

type DomainAddRemove

type DomainAddRemove struct {
	NameServer NameServer     `xml:"ns,omitempty"`
	Contact    []Contact      `xml:"contact,omitempty"`
	Status     []DomainStatus `xml:"status,omitempty"`
}

DomainAddRemove ...

type DomainChange

type DomainChange struct {
	Registrant string    `xml:"registrant,omitempty"`
	AuthInfo   *AuthInfo `xml:"authInfo,omitempty"`
}

DomainChange ...

type DomainCheck

type DomainCheck struct {
	Names []string `xml:"name"`
}

DomainCheck represents a check for domain(s).

type DomainCheckData

type DomainCheckData struct {
	CheckDomain []CheckType `xml:"cd"`
}

DomainCheckData represents the response data for a domain check command.

type DomainCheckType

type DomainCheckType struct {
	Check DomainCheck `xml:"urn:ietf:params:xml:ns:domain-1.0 command>check>check"`
}

DomainCheckType implements extension for check from domain-1.0.

type DomainCheckTypeIn

type DomainCheckTypeIn struct {
	Check DomainCheck `xml:"command>check>check"`
}

DomainCheckTypeIn represents a namespace agnostic version of DomainCheckType

type DomainChekDataType

type DomainChekDataType struct {
	CheckData DomainCheckData `xml:"urn:ietf:params:xml:ns:domain-1.0 chkData"`
}

DomainChekDataType implements extension for chekData from domain-1.0.

type DomainChekDataTypeIn

type DomainChekDataTypeIn struct {
	CheckData DomainCheckData `xml:"chkData"`
}

DomainChekDataTypeIn represents a namespace agnostic version of DomainChekDataType

type DomainCreate

type DomainCreate struct {
	Name       string     `xml:"name"`
	Period     Period     `xml:"period,omitempty"`
	NameServer NameServer `xml:"ns,omitempty"`
	Registrant string     `xml:"registrant,omitempty"`
	Contacts   []Contact  `xml:"contact,omitempty"`
	AuthInfo   *AuthInfo  `xml:"authInfo,omitempty"`
}

DomainCreate represents a domain create command.

type DomainCreateData

type DomainCreateData struct {
	Name       string    `xml:"name"`
	CreateDate time.Time `xml:"crDate"`
	ExpireDate time.Time `xml:"exDate"`
}

DomainCreateData represents the response data for a domain create command.

type DomainCreateDataType

type DomainCreateDataType struct {
	CreateData DomainCreateData `xml:"urn:ietf:params:xml:ns:domain-1.0 creData"`
}

DomainCreateDataType implements extension for createData from domain-1.0.

type DomainCreateDataTypeIn

type DomainCreateDataTypeIn struct {
	CreateData DomainCreateData `xml:"creData"`
}

DomainCreateDataTypeIn represents a namespace agnostic version of DomainCreateDataType

type DomainCreateType

type DomainCreateType struct {
	Create DomainCreate `xml:"urn:ietf:params:xml:ns:domain-1.0 command>create>create"`
}

DomainCreateType implements extension for create from domain-1.0.

type DomainCreateTypeIn

type DomainCreateTypeIn struct {
	Create DomainCreate `xml:"command>create>create"`
}

DomainCreateTypeIn represents a namespace agnostic version of DomainCreateType

type DomainDelete

type DomainDelete struct {
	Name string `xml:"name"`
}

DomainDelete represents a domain delete command.

type DomainDeleteType

type DomainDeleteType struct {
	Delete DomainDelete `xml:"urn:ietf:params:xml:ns:domain-1.0 command>create>delete"`
}

DomainDeleteType implements extension for delete from domain-1.0.

type DomainDeleteTypeIn

type DomainDeleteTypeIn struct {
	Delete DomainDelete `xml:"command>create>delete"`
}

DomainDeleteTypeIn represents a namespace agnostic version of DomainDeleteType

type DomainHostsType

type DomainHostsType string

DomainHostsType represents the string value of host types.

const (
	DomainHostsAll  DomainHostsType = "all"
	DomainHostsDel  DomainHostsType = "del"
	DomainHostsNone DomainHostsType = "none"
	DomainHostsSub  DomainHostsType = "sub"
)

Constants representing the string value of host value types.

type DomainInfo

type DomainInfo struct {
	Name     DomainInfoName `xml:"name"`
	AuthInfo *AuthInfo      `xml:"authInfo,omitempty"`
}

DomainInfo represents a domain info command.

type DomainInfoData

type DomainInfoData struct {
	Name         string         `xml:"name"`
	ROID         string         `xml:"roid"`
	Status       []DomainStatus `xml:"status,omitempty"`
	Registrant   string         `xml:"registrant,omitempty"`
	Contact      []Contact      `xml:"contact,omitempty"`
	NameServer   *NameServer    `xml:"ns,omitempty"`
	Host         []string       `xml:"host,omitempty"`
	ClientID     string         `xml:"clID"`
	CreateID     string         `xml:"crID,omitempty"`
	CreateDate   *time.Time     `xml:"crDate,omitempty"`
	UpdateID     string         `xml:"upID,omitempty"`
	UpdateDate   *time.Time     `xml:"upDate,omitempty"`
	ExpireDate   *time.Time     `xml:"exDate,omitempty"`
	TransferDate *time.Time     `xml:"trDate,omitempty"`
	AuthInfo     *AuthInfo      `xml:"authInfo,omitempty"`
}

DomainInfoData represents the response data for a domain info command.

type DomainInfoDataType

type DomainInfoDataType struct {
	InfoData DomainInfoData `xml:"urn:ietf:params:xml:ns:domain-1.0 infData"`
}

DomainInfoDataType implements extension for infoData from domain-1.0.

type DomainInfoDataTypeIn

type DomainInfoDataTypeIn struct {
	InfoData DomainInfoData `xml:"infData"`
}

DomainInfoDataTypeIn represents a namespace agnostic version of DomainInfoDataType

type DomainInfoName

type DomainInfoName struct {
	Name  string          `xml:",chardata"`
	Hosts DomainHostsType `xml:"hosts,attr,omitempty"`
}

DomainInfoName represents a domain name in a domain info response.

type DomainInfoType

type DomainInfoType struct {
	Info DomainInfo `xml:"urn:ietf:params:xml:ns:domain-1.0 command>info>info"`
}

DomainInfoType implements extension for info from domain-1.0.

type DomainInfoTypeIn

type DomainInfoTypeIn struct {
	Info DomainInfo `xml:"command>info>info"`
}

DomainInfoTypeIn represents a namespace agnostic version of DomainInfoType

type DomainPendingActivationNotificationData

type DomainPendingActivationNotificationData struct {
	Name          PendingActivationNotificationName `xml:"name"`
	TransactionID string                            `xml:"paTRID"`
	Date          time.Time                         `xml:"paDate"`
}

DomainPendingActivationNotificationData represents the response data for a domain pan command.

type DomainPendingActivationNotificationDataType

type DomainPendingActivationNotificationDataType struct {
	PendingActivationNotificationData DomainPendingActivationNotificationData `xml:"urn:ietf:params:xml:ns:domain-1.0 panData"`
}

DomainPendingActivationNotificationDataType implements extension for pendingActivationNotificationData from domain-1.0.

type DomainPendingActivationNotificationDataTypeIn

type DomainPendingActivationNotificationDataTypeIn struct {
	PendingActivationNotificationData DomainPendingActivationNotificationData `xml:"panData"`
}

DomainPendingActivationNotificationDataTypeIn represents a namespace agnostic version of DomainPendingActivationNotificationDataType

type DomainRenew

type DomainRenew struct {
	Name       string    `xml:"name"`
	ExpireDate time.Time `xml:"curExpDate"`
	Period     Period    `xml:"period,omitempty"`
}

DomainRenew represents a domain renew command.

type DomainRenewData

type DomainRenewData struct {
	Name       string    `xml:"name"`
	ExpireDate time.Time `xml:"exDate"`
}

DomainRenewData represents the response data for a domain renew command.

type DomainRenewDataType

type DomainRenewDataType struct {
	RenewData DomainRenewData `xml:"urn:ietf:params:xml:ns:domain-1.0 renData"`
}

DomainRenewDataType implements extension for renewData from domain-1.0.

type DomainRenewDataTypeIn

type DomainRenewDataTypeIn struct {
	RenewData DomainRenewData `xml:"renData"`
}

DomainRenewDataTypeIn represents a namespace agnostic version of DomainRenewDataType

type DomainRenewType

type DomainRenewType struct {
	Renew DomainRenew `xml:"urn:ietf:params:xml:ns:domain-1.0 command>renew>renew"`
}

DomainRenewType implements extension for renew from domain-1.0.

type DomainRenewTypeIn

type DomainRenewTypeIn struct {
	Renew DomainRenew `xml:"command>renew>renew"`
}

DomainRenewTypeIn represents a namespace agnostic version of DomainRenewType

type DomainStatus

type DomainStatus struct {
	Status           string           `xml:",chardata"`
	DomainStatusType DomainStatusType `xml:"s,attr"`
	Language         string           `xml:"lang,attr,omitempty"`
}

DomainStatus represents statuses for a domain.

type DomainStatusType

type DomainStatusType string

DomainStatusType represents available status values.

const (
	DomainStatusClientDeleteProhibited   DomainStatusType = "clientDeleteProhibited"
	DomainStatusClientHold               DomainStatusType = "clientHold"
	DomainStatusClientRenewProhibited    DomainStatusType = "clientRenewProhibited"
	DomainStatusClientTransferProhibited DomainStatusType = "clientTransferProhibited"
	DomainStatusClientUpdateProhibited   DomainStatusType = "clientUpdateProhibited"
	DomainStatusInactive                 DomainStatusType = "inactive"
	DomainStatusOk                       DomainStatusType = "ok"
	DomainStatusPendingCreate            DomainStatusType = "pendingCreate"
	DomainStatusPendingDelete            DomainStatusType = "pendingDelete"
	DomainStatusPendingRenew             DomainStatusType = "pendingRenew"
	DomainStatusPendingTransfer          DomainStatusType = "pendingTransfer"
	DomainStatusPendingUpdate            DomainStatusType = "pendingUpdate"
	DomainStatusServerDeleteProhibited   DomainStatusType = "serverDeleteProhibited"
	DomainStatusServerHold               DomainStatusType = "serverHold"
	DomainStatusServerRenewProhibited    DomainStatusType = "serverRenewProhibited"
	DomainStatusServerTransferProhibited DomainStatusType = "serverTransferProhibited"
	DomainStatusServerUpdateProhibited   DomainStatusType = "serverUpdateProhibited"
)

Constants representing the string value of status value types.

type DomainTransfer

type DomainTransfer struct {
	Name     string    `xml:"command>transfer>transfer>name"`
	Period   Period    `xml:"command>transfer>transfer>period,omitempty"`
	Authinfo *AuthInfo `xml:"command>transfer>transfer>authInfo,omitempty"`
}

DomainTransfer represents a domain transfer command.

type DomainTransferData

type DomainTransferData struct {
	Name           string                   `xml:"name"`
	TransferStatus DomainTransferStatusType `xml:"trStatus"`
	RequestingID   string                   `xml:"reID"`
	RequestingDate string                   `xml:"reDate"`
	ActingID       string                   `xml:"acID"`
	ActingDate     string                   `xml:"acDate"`
	ExpireDate     string                   `xml:"exDate,omitempty"`
}

DomainTransferData represents the response data for a domain transfer command.

type DomainTransferDataType

type DomainTransferDataType struct {
	TransferData DomainTransferData `xml:"urn:ietf:params:xml:ns:domain-1.0 trnData"`
}

DomainTransferDataType implements extension for transferData from domain-1.0.

type DomainTransferDataTypeIn

type DomainTransferDataTypeIn struct {
	TransferData DomainTransferData `xml:"trnData"`
}

DomainTransferDataTypeIn represents a namespace agnostic version of DomainTransferDataType

type DomainTransferStatusType

type DomainTransferStatusType string

DomainTransferStatusType represents available transaction statuses.

const (
	DomainTransferClientApproved  DomainTransferStatusType = "clientApproved"
	DomainTransferClientCancelled DomainTransferStatusType = "clientCancelled"
	DomainTransferClientRejected  DomainTransferStatusType = "clientRejected"
	DomainTransferPending         DomainTransferStatusType = "pending"
	DomainTransferServerApproved  DomainTransferStatusType = "serverApproved"
	DomainTransferServerCancelled DomainTransferStatusType = "serverCancelled"
)

Constants representing the string value of transaction status types.

type DomainTransferType

type DomainTransferType struct {
	Transfer DomainTransfer `xml:"urn:ietf:params:xml:ns:domain-1.0 command>transfer>transfer"`
}

DomainTransferType implements extension for transfer from domain-1.0.

type DomainTransferTypeIn

type DomainTransferTypeIn struct {
	Transfer DomainTransfer `xml:"command>transfer>transfer"`
}

DomainTransferTypeIn represents a namespace agnostic version of DomainTransferType

type DomainUpdate

type DomainUpdate struct {
	Name   string           `xml:"command>update>update>name"`
	Add    *DomainAddRemove `xml:"command>update>update>add,omitempty"`
	Remove *DomainAddRemove `xml:"command>update>update>rem,omitempty"`
	Change *DomainChange    `xml:"command>update>update>chg,omitempty"`
}

DomainUpdate represents a domain update command.

type DomainUpdateType

type DomainUpdateType struct {
	Update DomainUpdate `xml:"urn:ietf:params:xml:ns:domain-1.0 command>update>update"`
}

DomainUpdateType implements extension for update from domain-1.0.

type DomainUpdateTypeIn

type DomainUpdateTypeIn struct {
	Update DomainUpdate `xml:"command>update>update"`
}

DomainUpdateTypeIn represents a namespace agnostic version of DomainUpdateType

type E164Type

type E164Type struct {
	Value string `xml:",chardata"`
	X     string `xml:"x,attr"`
}

E164Type represents the E.164 numeric plan.

type EPPGreeting

type EPPGreeting struct {
	Greeting Greeting `xml:"greeting"`
}

EPPGreeting is the type to represent a greeting from the server.

type EmptyTag

type EmptyTag struct{}

EmptyTag represents a tag that can not have any value. This is used for instances to know where a tag was set or not by assigning the parent tag to a pointer to this type.

func Empty

func Empty() *EmptyTag

Empty returns a non-nil value to use as an empty tag where the tag is defined with `omitempty` and would otherwise not be visible.

type ExternalErrorValue

type ExternalErrorValue struct {
	Value  interface{} `xml:"value"`
	Reason string      `xml:"reason"`
}

ExternalErrorValue represents the response in the extValeu tag.

type Greeting

type Greeting struct {
	ServerID    string      `xml:"svID"`
	ServerDate  time.Time   `xml:"svDate"`
	ServiceMenu ServiceMenu `xml:"svcMenu"`
	DCP         DCP         `xml:"dcp"`
}

Greeting represents the elements in a greeting message.

type HostAddRemove

type HostAddRemove struct {
	Address []HostAddress `xml:"addr,omitempty"`
}

HostAddRemove represents data that can be added or removed while updating a domain.

type HostAddress

type HostAddress struct {
	Address string `xml:",chardata,omitempty"`
	IP      IPType `xml:"ip,attr"`
}

HostAddress represents an IP address beloning to a host.

type HostAttribute

type HostAttribute struct {
	HostName    string        `xml:"hostName"`
	HostAddress []HostAddress `xml:"hostAddr"`
}

HostAttribute represents attributes for a host for a domain.

type HostCheck

type HostCheck struct {
	Names []string `xml:"name"`
}

HostCheck represents a host check request to the EPP server.

type HostCheckData

type HostCheckData struct {
	Name []CheckType `xml:"cd"`
}

HostCheckData represents the response for a host check command.

type HostCheckDataType

type HostCheckDataType struct {
	CheckData HostCheckData `xml:"urn:ietf:params:xml:ns:host-1.0 chkData"`
}

HostCheckDataType represents host check data.

type HostCheckDataTypeIn

type HostCheckDataTypeIn struct {
	CheckData HostCheckData `xml:"chkData"`
}

HostCheckDataTypeIn represents a namespace agnostic version of HostCheckDataType

type HostCheckType

type HostCheckType struct {
	Check HostCheck `xml:"urn:ietf:params:xml:ns:host-1.0 command>check>check"`
}

HostCheckType represents a host check command.

type HostCheckTypeIn

type HostCheckTypeIn struct {
	Check HostCheck `xml:"command>check>check"`
}

HostCheckTypeIn represents a namespace agnostic version of HostCheckType

type HostCreate

type HostCreate struct {
	Name    string      `xml:"name"`
	Address HostAddress `xml:"addr,omitempty"`
}

HostCreate represents a host create request to the EPP server.

type HostCreateData

type HostCreateData struct {
	Name       string    `xml:"name"`
	CreateDate time.Time `xml:"crDate"`
}

HostCreateData represents the response for a host create command.

type HostCreateDataType

type HostCreateDataType struct {
	CreateData HostCreateData `xml:"urn:ietf:params:xml:ns:host-1.0 creData"`
}

HostCreateDataType represents host create data.

type HostCreateDataTypeIn

type HostCreateDataTypeIn struct {
	CreateData HostCreateData `xml:"creData"`
}

HostCreateDataTypeIn represents a namespace agnostic version of HostCreateDataType

type HostCreateType

type HostCreateType struct {
	Create HostCreate `xml:"urn:ietf:params:xml:ns:host-1.0 command>create>create"`
}

HostCreateType represents a host create command.

type HostCreateTypeIn

type HostCreateTypeIn struct {
	Create HostCreate `xml:"command>create>create"`
}

HostCreateTypeIn represents a namespace agnostic version of HostCreateType

type HostDelete

type HostDelete struct {
	Name string `xml:"name"`
}

HostDelete represents a host delete request to the EPP server.

type HostDeleteType

type HostDeleteType struct {
	Delete HostDelete `xml:"urn:ietf:params:xml:ns:host-1.0 command>delete>delete"`
}

HostDeleteType represents a host delete command.

type HostDeleteTypeIn

type HostDeleteTypeIn struct {
	Delete HostDelete `xml:"command>delete>delete"`
}

HostDeleteTypeIn represents a namespace agnostic version of HostDeleteType

type HostInfo

type HostInfo struct {
	Name string `xml:"name"`
}

HostInfo represents a host info request to the EPP server.

type HostInfoData

type HostInfoData struct {
	Name         string        `xml:"name"`
	ROID         string        `xml:"roid"`
	Status       []HostStatus  `xml:"status"`
	Address      []HostAddress `xml:"addr,omitempty"`
	ClientID     string        `xml:"clID"`
	CreateID     string        `xml:"crID"`
	CreateDate   time.Time     `xml:"crDate"`
	UpdateID     string        `xml:"upID,omitempty"`
	UpdateDate   time.Time     `xml:"upDate,omitempty"`
	TransferDate time.Time     `xml:"trDate,omitempty"`
}

HostInfoData represents the response for a host info command.

type HostInfoDataType

type HostInfoDataType struct {
	InfoData HostInfoData `xml:"urn:ietf:params:xml:ns:host-1.0 infData"`
}

HostInfoDataType represents host info data.

type HostInfoDataTypeIn

type HostInfoDataTypeIn struct {
	InfoData HostInfoData `xml:"infData"`
}

HostInfoDataTypeIn represents a namespace agnostic version of HostInfoDataType

type HostInfoType

type HostInfoType struct {
	Info HostInfo `xml:"urn:ietf:params:xml:ns:host-1.0 command>info>info"`
}

HostInfoType represents a host info command.

type HostInfoTypeIn

type HostInfoTypeIn struct {
	Info HostInfo `xml:"command>info>info"`
}

HostInfoTypeIn represents a namespace agnostic version of HostInfoType

type HostStatus

type HostStatus struct {
	Status         string         `xml:",chardata"`
	HostStatusType HostStatusType `xml:"s,attr"`
	Language       string         `xml:"lang,attr"`
}

HostStatus represents statuses for a host.

type HostStatusType

type HostStatusType string

HostStatusType represents available status values.

const (
	HostStatusClientDeleteProhibited HostStatusType = "clientDeleteProhibited"
	HostStatusClientUpdateProhibited HostStatusType = "clientUpdateProhibited"
	HostStatusLinked                 HostStatusType = "linked"
	HostStatusOk                     HostStatusType = "ok"
	HostStatusPendingCreate          HostStatusType = "pendingCreate"
	HostStatusPendingDelete          HostStatusType = "pendingDelete"
	HostStatusPendingTransfer        HostStatusType = "pendingTransfer"
	HostStatusPendingUpdate          HostStatusType = "pendingUpdate"
	HostStatusServerDeleteProhibited HostStatusType = "serverDeleteProhibited"
	HostStatusServerUpdateProhibited HostStatusType = "serverUpdateProhibited"
)

Constants representing the string value of status value types.

type HostUpdate

type HostUpdate struct {
	Name   string         `xml:"name"`
	Add    *HostAddRemove `xml:"add,omitempty"`
	Remove *HostAddRemove `xml:"rem,omitempty"`
	Change string         `xml:"chg>name,omitempty"`
}

HostUpdate represents a host update request to the EPP server.

type HostUpdateType

type HostUpdateType struct {
	Update HostUpdate `xml:"urn:ietf:params:xml:ns:host-1.0 command>update>update"`
}

HostUpdateType represents a host update command.

type HostUpdateTypeIn

type HostUpdateTypeIn struct {
	Update HostUpdate `xml:"command>update>update"`
}

HostUpdateTypeIn represents a namespace agnostic version of HostUpdateType

type IISExtensionCreate

type IISExtensionCreate struct {
	OrganizationNumber string `xml:"orgno,omitempty"`
	VatNumber          string `xml:"vatno,omitempty"`
}

IISExtensionCreate represents the extension data for create.

type IISExtensionCreateType

type IISExtensionCreateType struct {
	Create IISExtensionCreate `xml:"urn:se:iis:xml:epp:iis-1.2 command>extension>create"`
}

IISExtensionCreateType represents the create tag from the iis-1.2 extension.

type IISExtensionCreateTypeIn

type IISExtensionCreateTypeIn struct {
	Create IISExtensionCreate `xml:"command>extension>create"`
}

IISExtensionCreateTypeIn represents a namespace agnostic version of IISExtensionCreateType

type IISExtensionInfoData

type IISExtensionInfoData struct {
	OrganizationNumber string     `xml:"orgno,omitempty"`
	VatNumber          string     `xml:"vatno,omitempty"`
	DeactivationDate   *time.Time `xml:"deactDate,omitempty"`
	DeleteDate         *time.Time `xml:"delDate,omitempty"`
	ReleaseDate        *time.Time `xml:"relDate,omitempty"`
	State              string     `xml:"state,omitempty"`
	ClientDelete       bool       `xml:"clientDelete,omitempty"`
}

IISExtensionInfoData represents the extension data for infData.

type IISExtensionInfoDataType

type IISExtensionInfoDataType struct {
	InfoData IISExtensionInfoData `xml:"urn:se:iis:xml:epp:iis-1.2 infData"`
}

IISExtensionInfoDataType represents the infData tag from iis-1.2 extension.

type IISExtensionInfoDataTypeIn

type IISExtensionInfoDataTypeIn struct {
	InfoData IISExtensionInfoData `xml:"infData"`
}

IISExtensionInfoDataTypeIn represents a namespace agnostic version of IISExtensionInfoDataType

type IISExtensionTransfer

type IISExtensionTransfer struct {
	NameServer NameServer `xml:"ns"`
}

IISExtensionTransfer represents the extension data for transfer.

type IISExtensionTransferType

type IISExtensionTransferType struct {
	Update IISExtensionUpdate `xml:"urn:se:iis:xml:epp:iis-1.2 command>extension>transfer"`
}

IISExtensionTransferType represents the transfer tag from iis-1.2 extension.

type IISExtensionTransferTypeIn

type IISExtensionTransferTypeIn struct {
	Update IISExtensionUpdate `xml:"command>extension>transfer"`
}

IISExtensionTransferTypeIn represents a namespace agnostic version of IISExtensionTransferType

type IISExtensionUpdate

type IISExtensionUpdate struct {
	VatNumber    string `xml:"vatno,omitempty"`
	ClientDelete bool   `xml:"clientDelete,omitempty"`
}

IISExtensionUpdate represents the extension data for update.

type IISExtensionUpdateType

type IISExtensionUpdateType struct {
	Update IISExtensionUpdate `xml:"urn:se:iis:xml:epp:iis-1.2 command>extension>update"`
}

IISExtensionUpdateType represents the update thag from iis-1.2 extension.

type IISExtensionUpdateTypeIn

type IISExtensionUpdateTypeIn struct {
	Update IISExtensionUpdate `xml:"command>extension>update"`
}

IISExtensionUpdateTypeIn represents a namespace agnostic version of IISExtensionUpdateType

type IPType

type IPType string

IPType represents IP type, that is the IP version

const (
	HostIPv4 IPType = "v4"
	HostIPv6 IPType = "v6"
)

Contants representing allowed values for IP type.

type InternationalOrLocalType

type InternationalOrLocalType struct {
	Value string         `xml:",chardata"`
	Type  PostalInfoType `xml:"type,attr"`
}

InternationalOrLocalType represents a value with a type set to an available postal info type.

type Login

type Login struct {
	ClientID    string        `xml:"command>login>clID,omitempty"`
	Password    string        `xml:"command>login>pw,omitempty"`
	NewPassword string        `xml:"command>login>newPW,omitempty"`
	Options     LoginOptions  `xml:"command>login>options,omitempty"`
	Services    LoginServices `xml:"command>login>svcs,omitempty"`
}

Login represents the data passed to login.

type LoginOptions

type LoginOptions struct {
	Version  string `xml:"version"`
	Language string `xml:"lang"`
}

LoginOptions represents options that belongs to the login command.

type LoginServiceExtension

type LoginServiceExtension struct {
	ExtensionURI []string `xml:"extURI"`
}

LoginServiceExtension represents extension URIs.

type LoginServices

type LoginServices struct {
	ObjectURI        []string              `xml:"objURI"`
	ServiceExtension LoginServiceExtension `xml:"svcExtension"`
}

LoginServices represents services used while logging in

type MessageQueue

type MessageQueue struct {
	QueueDate *time.Time `xml:"qDate,omitempty"`
	Message   string     `xml:"msg,omitempty"`
	Count     int        `xml:"count,attr"`
	ID        string     `xml:"id,attr"`
}

MessageQueue represents a message queue for client retrieval.

type NameServer

type NameServer struct {
	HostObject    []string        `xml:"hostObj,omitempty"`
	HostAttribute []HostAttribute `xml:"hostAttr,omitempty"`
}

NameServer represents a name server for a domain.

type PendingActivationNotificationName

type PendingActivationNotificationName struct {
	Name                    string `xml:",chardata"`
	PendingActivationResult bool   `xml:"paResult,attr,omitempty"`
}

PendingActivationNotificationName represents the name in pending activation notification data sets.

type Period

type Period struct {
	Value int    `xml:",chardata"`
	Unit  string `xml:"unit,attr"`
}

Period represents the period unit and value.

type Poll

type Poll struct {
	Poll PollCommand `xml:"command>poll"`
}

Poll represents a poll command.

type PollCommand

type PollCommand struct {
	Operation PollOperation `xml:"op,attr"`
	MessageID string        `xml:"msgID,attr"`
}

PollCommand represents the (attribute) data from a poll command tag.

type PollOperation

type PollOperation string

PollOperation represents an operation for a poll command.

const (
	PollOperationAcknowledge PollOperation = "ack"
	PollOperationRequest     PollOperation = "req"
)

Constants representing available poll operations.

type PostalInfo

type PostalInfo struct {
	Name         string         `xml:"name"`
	Organization string         `xml:"org,omitempty"`
	Address      Address        `xml:"addr"`
	Type         PostalInfoType `xml:"type,attr"`
}

PostalInfo represents potal information for a contact.

type PostalInfoType

type PostalInfoType string

PostalInfoType represents the typoe of a postal info.

const (
	PostalInfoLocal         PostalInfoType = "loc"
	PostalInfoInternational PostalInfoType = "int"
)

Contants represeting postal info types.

type Response

type Response struct {
	Result        []Result      `xml:"response>result"`
	MessageQ      *MessageQueue `xml:"response>msgQ,omitempty"`
	ResultData    interface{}   `xml:"response>resData,omitempty"`
	Extension     interface{}   `xml:"response>extension,omitempty"`
	TransactionID TransactionID `xml:"response>trID"`
}

Response represents an EPP response.

type Result

type Result struct {
	Code          int                 `xml:"code,attr"`
	Message       string              `xml:"msg"`
	Value         interface{}         `xml:"value"`
	ExternalValue *ExternalErrorValue `xml:"extValue,omitempty"`
}

Result represents the result in a EPP response.

type ServiceExtension

type ServiceExtension struct {
	ExtensionURI string `xml:"extURI"`
}

ServiceExtension represent extension to the service.

type ServiceMenu

type ServiceMenu struct {
	Version           []string           `xml:"version"`
	Language          []string           `xml:"lang"`
	ObjectURI         []string           `xml:"objURI"`
	ServiceExtentions []ServiceExtension `xml:"svcExtention"`
}

ServiceMenu represents tags that may occur in the greeting service tag.

type TransactionID

type TransactionID struct {
	ClientTransactionID string `xml:"clTRID,omitempty"`
	ServerTransactionID string `xml:"svTRID"`
}

TransactionID represents transaction IDs for the client and the server.

Jump to

Keyboard shortcuts

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