Documentation ¶
Index ¶
- Constants
- func CheckResponse(r *Response) error
- type AccountService
- type AccountServiceOp
- type Client
- type ClientOptions
- type Contact
- type ContactCreateRequest
- type ContactInfoResponse
- type ContactListResponse
- type ContactService
- type ContactServiceOp
- func (s *ContactServiceOp) Create(request *ContactCreateRequest) (int, error)
- func (s *ContactServiceOp) Delete(roId int) error
- func (s *ContactServiceOp) Info(contactId int) (*ContactInfoResponse, error)
- func (s *ContactServiceOp) List(search string) (*ContactListResponse, error)
- func (s *ContactServiceOp) Update(request *ContactUpdateRequest) error
- type ContactUpdateRequest
- type DomainCheckResponse
- type DomainInfoResponse
- type DomainList
- type DomainListRequest
- type DomainPriceResponse
- type DomainRegisterRequest
- type DomainRegisterResponse
- type DomainService
- type DomainServiceOp
- func (s *DomainServiceOp) Check(domains []string) ([]DomainCheckResponse, error)
- func (s *DomainServiceOp) Delete(domain string, scheduledDate time.Time) error
- func (s *DomainServiceOp) GetPrices(tlds []string) ([]DomainPriceResponse, error)
- func (s *DomainServiceOp) Info(domain string, roId int) (*DomainInfoResponse, error)
- func (s *DomainServiceOp) List(request *DomainListRequest) (*DomainList, error)
- func (s *DomainServiceOp) Register(request *DomainRegisterRequest) (*DomainRegisterResponse, error)
- func (s *DomainServiceOp) Whois(domain string) (string, error)
- type ErrorResponse
- type NameserverCheckResponse
- type NameserverCreateRequest
- type NameserverDomain
- type NameserverRecord
- type NameserverRecordRequest
- type NameserverService
- type NameserverServiceOp
- func (s *NameserverServiceOp) Check(domain string, nameservers []string) (*NameserverCheckResponse, error)
- func (s *NameserverServiceOp) Create(request *NameserverCreateRequest) (int, error)
- func (s *NameserverServiceOp) CreateRecord(request *NameserverRecordRequest) (int, error)
- func (s *NameserverServiceOp) DeleteRecord(recId int) error
- func (s *NameserverServiceOp) FindRecordById(recId int) (*NameserverRecord, *NameserverDomain, error)
- func (s *NameserverServiceOp) Info(domain string, domainId int) (*NamserverInfoResponse, error)
- func (s *NameserverServiceOp) List(domain string) (*NamserverListResponse, error)
- func (s *NameserverServiceOp) UpdateRecord(recId int, request *NameserverRecordRequest) error
- type NamserverInfoResponse
- type NamserverListResponse
- type Request
- type Response
Constants ¶
View Source
const ( APIBaseUrl = "https://api.domrobot.com/xmlrpc/" APISandboxBaseUrl = "https://api.ote.domrobot.com/xmlrpc/" APILanguage = "eng" )
Variables ¶
This section is empty.
Functions ¶
func CheckResponse ¶
CheckResponse checks the API response for errors, and returns them if present.
Types ¶
type AccountService ¶ added in v0.3.0
type AccountServiceOp ¶ added in v0.3.0
type AccountServiceOp struct {
// contains filtered or unexported fields
}
func (*AccountServiceOp) Lock ¶ added in v0.3.0
func (s *AccountServiceOp) Lock() error
func (*AccountServiceOp) Login ¶ added in v0.3.0
func (s *AccountServiceOp) Login() error
func (*AccountServiceOp) Logout ¶ added in v0.3.0
func (s *AccountServiceOp) Logout() error
func (*AccountServiceOp) Unlock ¶ added in v0.3.0
func (s *AccountServiceOp) Unlock(tan string) error
type Client ¶
type Client struct { // HTTP client used to communicate with the INWX API. RPCClient *xmlrpc.Client // Base URL for API requests. BaseURL *url.URL // API username Username string // API password Password string // User agent for client APILanguage string // Services used for communicating with the API Account AccountService Domains DomainService Nameservers NameserverService Contacts ContactService }
Client manages communication with INWX API.
func NewClient ¶
func NewClient(username, password string, opts *ClientOptions) *Client
NewClient returns a new INWX API client.
type ClientOptions ¶ added in v0.2.1
type ClientOptions struct {
Sandbox bool
}
type Contact ¶
type Contact struct { RoId int Id string Type string Name string Org string Street string City string PostalCode string `mapstructure:"pc"` StateProvince string `mapstructure:"sp"` Country string `mapstructure:"cc"` Phone string `mapstructure:"voice"` Fax string Email string Remarks string Protection int }
type ContactCreateRequest ¶ added in v0.3.2
type ContactCreateRequest struct { Type string `structs:"type"` Name string `structs:"name"` Org string `structs:"org,omitempty"` Street string `structs:"street"` City string `structs:"city"` PostalCode string `structs:"pc"` StateProvince string `structs:"sp,omitempty"` CountryCode string `structs:"cc"` Voice string `structs:"voice"` Fax string `structs:"fax,omitempty"` Email string `structs:"email"` Remarks string `structs:"remarks,omitempty"` Protection bool `structs:"protection,omitempty"` Testing bool `structs:"testing,omitempty"` }
type ContactInfoResponse ¶ added in v0.3.2
type ContactInfoResponse struct {
Contact Contact `mapstructure:"contact"`
}
type ContactListResponse ¶ added in v0.3.2
type ContactService ¶ added in v0.3.2
type ContactService interface { Create(*ContactCreateRequest) (int, error) Update(*ContactUpdateRequest) error Delete(int) error Info(int) (*ContactInfoResponse, error) List(string) (*ContactListResponse, error) }
type ContactServiceOp ¶ added in v0.3.2
type ContactServiceOp struct {
// contains filtered or unexported fields
}
func (*ContactServiceOp) Create ¶ added in v0.3.2
func (s *ContactServiceOp) Create(request *ContactCreateRequest) (int, error)
func (*ContactServiceOp) Delete ¶ added in v0.3.2
func (s *ContactServiceOp) Delete(roId int) error
func (*ContactServiceOp) Info ¶ added in v0.3.2
func (s *ContactServiceOp) Info(contactId int) (*ContactInfoResponse, error)
func (*ContactServiceOp) List ¶ added in v0.3.2
func (s *ContactServiceOp) List(search string) (*ContactListResponse, error)
func (*ContactServiceOp) Update ¶ added in v0.3.2
func (s *ContactServiceOp) Update(request *ContactUpdateRequest) error
type ContactUpdateRequest ¶ added in v0.3.2
type ContactUpdateRequest struct { Id int `structs:"id"` Name string `structs:"name,omitempty"` Org string `structs:"org,omitempty"` Street string `structs:"street,omitempty"` City string `structs:"city,omitempty"` PostalCode string `structs:"pc,omitempty"` StateProvince string `structs:"sp,omitempty"` CountryCode string `structs:"cc,omitempty"` Voice string `structs:"voice,omitempty"` Fax string `structs:"fax,omitempty"` Email string `structs:"email,omitempty"` Remarks string `structs:"remarks,omitempty"` Protection bool `structs:"protection,omitempty"` Testing bool `structs:"testing,omitempty"` }
type DomainCheckResponse ¶
type DomainCheckResponse struct { Available int `mapstructure:"avail"` Status string `mapstructure:"status"` Name string `mapstructure:"name"` Domain string `mapstructure:"domain"` TLD string `mapstructure:"tld"` CheckMethod string `mapstructure:"checkmethod"` Price float32 `mapstructure:"price"` CheckTime float32 `mapstructure:"checktime"` }
type DomainInfoResponse ¶
type DomainInfoResponse struct { RoId int `mapstructure:"roId"` Domain string `mapstructure:"domain"` DomainAce string `mapstructure:"domainAce"` Period string `mapstructure:"period"` CrDate time.Time `mapstructure:"crDate"` ExDate time.Time `mapstructure:"exDate"` UpDate time.Time `mapstructure:"upDate"` ReDate time.Time `mapstructure:"reDate"` ScDate time.Time `mapstructure:"scDate"` TransferLock int `mapstructure:"transferLock"` Status string `mapstructure:"status"` AuthCode string `mapstructure:"authCode"` RenewalMode string `mapstructure:"renewalMode"` TransferMode string `mapstructure:"transferMode"` Registrant int `mapstructure:"registrant"` Admin int `mapstructure:"admin"` Tech int `mapstructure:"tech"` Billing int `mapstructure:"billing"` Nameservers []string `mapstructure:"ns"` NoDelegation string `mapstructure:"noDelegation"` Contacts map[string]Contact `mapstructure:"contact"` }
type DomainList ¶
type DomainList struct { Count int Domains []DomainInfoResponse `mapstructure:"domain"` }
type DomainListRequest ¶
type DomainListRequest struct { Domain string `structs:"domain,omitempty"` RoId int `structs:"roId,omitempty"` Status int `structs:"status,omitempty"` Registrant int `structs:"registrant,omitempty"` Admin int `structs:"admin,omitempty"` Tech int `structs:"tech,omitempty"` Billing int `structs:"billing,omitempty"` RenewalMode int `structs:"renewalMode,omitempty"` TransferLock int `structs:"transferLock,omitempty"` NoDelegation int `structs:"noDelegation,omitempty"` Tag int `structs:"tag,omitempty"` Order int `structs:"order,omitempty"` Page int `structs:"page,omitempty"` Pagelimit int `structs:"pagelimit,omitempty"` }
type DomainPriceResponse ¶ added in v0.3.2
type DomainPriceResponse struct { Tld string `mapstructure:"tld"` Currency string `mapstructure:"currency"` CreatePrice float32 `mapstructure:"createPrice"` MonthlyCreatePrice float32 `mapstructure:"monthlyCreatePrice"` TransferPrice float32 `mapstructure:"transferPrice"` RenewalPrice float32 `mapstructure:"renewalPrice"` MonthlyRenewalPrice float32 `mapstructure:"monthlyRenewalPrice"` UpdatePrice float32 `mapstructure:"updatePrice"` TradePrice float32 `mapstructure:"tradePrice"` TrusteePrice float32 `mapstructure:"trusteePrice"` MonthlyTrusteePrice float32 `mapstructure:"monthlyTrusteePrice"` CreatePeriod int `mapstructure:"createPeriod"` TransferPeriod int `mapstructure:"transferPeriod"` RenewalPeriod int `mapstructure:"renewalPeriod"` TradePeriod int `mapstructure:"tradePeriod"` }
type DomainRegisterRequest ¶
type DomainRegisterRequest struct { Domain string `structs:"domain"` Period string `structs:"period,omitempty"` Registrant int `structs:"registrant"` Admin int `structs:"admin"` Tech int `structs:"tech"` Billing int `structs:"billing"` Nameservers []string `structs:"ns,omitempty"` TransferLock string `structs:"transferLock,omitempty"` RenewalMode string `structs:"renewalMode,omitempty"` WhoisProvider string `structs:"whoisProvider,omitempty"` WhoisUrl string `structs:"whoisUrl,omitempty"` ScDate string `structs:"scDate,omitempty"` ExtDate string `structs:"extDate,omitempty"` Asynchron string `structs:"asynchron,omitempty"` Voucher string `structs:"voucher,omitempty"` Testing string `structs:"testing,omitempty"` }
type DomainRegisterResponse ¶
type DomainService ¶
type DomainService interface { Check(domains []string) ([]DomainCheckResponse, error) Register(request *DomainRegisterRequest) (*DomainRegisterResponse, error) Delete(domain string, scheduledDate time.Time) error Info(domain string, roId int) (*DomainInfoResponse, error) GetPrices(tlds []string) ([]DomainPriceResponse, error) List(*DomainListRequest) (*DomainList, error) Whois(domain string) (string, error) }
type DomainServiceOp ¶
type DomainServiceOp struct {
// contains filtered or unexported fields
}
func (*DomainServiceOp) Check ¶
func (s *DomainServiceOp) Check(domains []string) ([]DomainCheckResponse, error)
func (*DomainServiceOp) Delete ¶
func (s *DomainServiceOp) Delete(domain string, scheduledDate time.Time) error
func (*DomainServiceOp) GetPrices ¶ added in v0.3.2
func (s *DomainServiceOp) GetPrices(tlds []string) ([]DomainPriceResponse, error)
func (*DomainServiceOp) Info ¶
func (s *DomainServiceOp) Info(domain string, roId int) (*DomainInfoResponse, error)
func (*DomainServiceOp) List ¶
func (s *DomainServiceOp) List(request *DomainListRequest) (*DomainList, error)
func (*DomainServiceOp) Register ¶
func (s *DomainServiceOp) Register(request *DomainRegisterRequest) (*DomainRegisterResponse, error)
type ErrorResponse ¶
type ErrorResponse struct { Code int `xmlrpc:"code"` Message string `xmlrpc:"msg"` ReasonCode string `xmlrpc:"reasonCode"` Reason string `xmlrpc:"reason"` }
An ErrorResponse reports the error caused by an API request
func (*ErrorResponse) Error ¶
func (r *ErrorResponse) Error() string
type NameserverCheckResponse ¶
type NameserverCreateRequest ¶ added in v0.3.2
type NameserverCreateRequest struct { Domain string `structs:"domain"` Type string `structs:"type"` Nameservers []string `structs:"ns,omitempty"` MasterIp string `structs:"masterIp,omitempty"` Web string `structs:"web,omitempty"` Mail string `structs:"mail,omitempty"` SoaEmail string `structs:"soaEmail,omitempty"` UrlRedirectType string `structs:"urlRedirectType,omitempty"` UrlRedirectTitle string `structs:"urlRedirectTitle,omitempty"` UrlRedirectDescription string `structs:"urlRedirectDescription,omitempty"` UrlRedirectFavIcon string `structs:"urlRedirectFavIcon,omitempty"` UrlRedirectKeywords string `structs:"urlRedirectKeywords,omitempty"` Testing bool `structs:"testing,omitempty"` }
type NameserverDomain ¶ added in v0.2.0
type NameserverDomain struct { RoId int `mapstructure:"roId"` Domain string `mapstructure:"domain"` Type string `mapstructure:"type"` MasterIp string `mapstructure:"masterIp"` Mail string `mapstructure:"mail"` Web string `mapstructure:"web"` Url string `mapstructure:"url"` Ipv4 string `mapstructure:"ipv4"` Ipv6 string `mapstructure:"ipv6"` }
type NameserverRecord ¶
type NameserverRecordRequest ¶
type NameserverRecordRequest struct { RoId int `structs:"roId,omitempty"` Domain string `structs:"domain,omitempty"` Type string `structs:"type"` Content string `structs:"content"` Name string `structs:"name,omitempty"` Ttl int `structs:"ttl,omitempty"` Priority int `structs:"prio,omitempty"` UrlRedirectType string `structs:"urlRedirectType,omitempty"` UrlRedirectTitle string `structs:"urlRedirectTitle,omitempty"` UrlRedirectDescription string `structs:"urlRedirectDescription,omitempty"` UrlRedirectFavIcon string `structs:"urlRedirectFavIcon,omitempty"` UrlRedirectKeywords string `structs:"urlRedirectKeywords,omitempty"` }
type NameserverService ¶
type NameserverService interface { Check(domain string, nameservers []string) (*NameserverCheckResponse, error) Create(*NameserverCreateRequest) (int, error) Info(domain string, domainId int) (*NamserverInfoResponse, error) List(domain string) (*NamserverListResponse, error) CreateRecord(*NameserverRecordRequest) (int, error) UpdateRecord(recId int, request *NameserverRecordRequest) error DeleteRecord(recId int) error FindRecordById(recId int) (*NameserverRecord, *NameserverDomain, error) }
type NameserverServiceOp ¶
type NameserverServiceOp struct {
// contains filtered or unexported fields
}
func (*NameserverServiceOp) Check ¶
func (s *NameserverServiceOp) Check(domain string, nameservers []string) (*NameserverCheckResponse, error)
func (*NameserverServiceOp) Create ¶ added in v0.3.2
func (s *NameserverServiceOp) Create(request *NameserverCreateRequest) (int, error)
func (*NameserverServiceOp) CreateRecord ¶
func (s *NameserverServiceOp) CreateRecord(request *NameserverRecordRequest) (int, error)
func (*NameserverServiceOp) DeleteRecord ¶
func (s *NameserverServiceOp) DeleteRecord(recId int) error
func (*NameserverServiceOp) FindRecordById ¶ added in v0.2.1
func (s *NameserverServiceOp) FindRecordById(recId int) (*NameserverRecord, *NameserverDomain, error)
func (*NameserverServiceOp) Info ¶
func (s *NameserverServiceOp) Info(domain string, domainId int) (*NamserverInfoResponse, error)
func (*NameserverServiceOp) List ¶ added in v0.2.0
func (s *NameserverServiceOp) List(domain string) (*NamserverListResponse, error)
func (*NameserverServiceOp) UpdateRecord ¶
func (s *NameserverServiceOp) UpdateRecord(recId int, request *NameserverRecordRequest) error
type NamserverInfoResponse ¶
type NamserverListResponse ¶ added in v0.2.0
type NamserverListResponse struct { Count int Domains []NameserverDomain `mapstructure:"domains"` }
type Response ¶
type Response struct { Code int `xmlrpc:"code"` Message string `xmlrpc:"msg"` ReasonCode string `xmlrpc:"reasonCode"` Reason string `xmlrpc:"reason"` ResponseData map[string]interface{} `xmlrpc:"resData"` }
Response is a INWX API response. This wraps the standard http.Response returned from INWX.
Click to show internal directories.
Click to hide internal directories.