Versions in this module Expand all Collapse all v1 v1.0.1 Mar 4, 2021 Changes in this version + var Version = "(unknown)" v1.0.0 Dec 9, 2020 Changes in this version + const NA + const Unlimited + var ErrBadRange = errors.New("offset is greater than the maximum allowed") + var ErrBadRequest = errors.New("bad request") + var ErrConcurrencyLimit = errors.New("concurrency limit exceeded") + var ErrForbidden = errors.New("invalid api key or ip not authorized") + var ErrInvalidExpires = errors.New("invalid expires value") + var ErrInvalidLimit = errors.New("invalid limit value") + var ErrInvalidRData = errors.New("rdata not []string or string") + var ErrInvalidRemaining = errors.New("invalid remaining value") + var ErrInvalidReset = errors.New("invalid reset value") + var ErrQuotaExceeded = errors.New("quota exceeded") + var ErrResultLimitExceeded = errors.New("result limit reached") + var ErrUnauthorized = errors.New("api key not authorized") + func HttpStatusError(code int) error + type Client interface + LookupRDataIP func(ip net.IPNet) Query + LookupRDataIPRange func(lower, upper net.IP) Query + LookupRDataName func(name string) Query + LookupRDataRaw func(raw []byte) Query + LookupRRSet func(name string) Query + type HttpResultFunc func(ctx context.Context, req *http.Request) Result + type PingClient interface + Ping func() PingRequest + type PingRequest interface + Do func(context.Context) error + type PingResponse struct + Ping string + type Query interface + Do func(ctx context.Context) Result + WithAggregation func(aggr bool) Query + WithBailiwick func(bailiwick string) Query + WithLimit func(n int) Query + WithMaxCount func(n int) Query + WithOffset func(n int) Query + WithRRType func(rrtype string) Query + WithRelativeTimeFirstAfter func(since time.Duration) Query + WithRelativeTimeFirstBefore func(since time.Duration) Query + WithRelativeTimeLastAfter func(since time.Duration) Query + WithRelativeTimeLastBefore func(since time.Duration) Query + WithTimeFirstAfter func(when time.Time) Query + WithTimeFirstBefore func(when time.Time) Query + WithTimeLastAfter func(when time.Time) Query + WithTimeLastBefore func(when time.Time) Query + func NewHttpRDataIPQuery(net net.IPNet, url *url.URL, headers http.Header, result HttpResultFunc) Query + func NewHttpRDataIPRangeQuery(lower, upper net.IP, url *url.URL, headers http.Header, result HttpResultFunc) Query + func NewHttpRDataNameQuery(name string, url *url.URL, headers http.Header, result HttpResultFunc) Query + func NewHttpRDataRawQuery(raw []byte, url *url.URL, headers http.Header, result HttpResultFunc) Query + func NewHttpRRSetQuery(name string, url *url.URL, headers http.Header, result HttpResultFunc) Query + type RRSet struct + Bailiwick string + Count int + NumResults int + RData []string + RRName string + RRType string + RawRData []byte + TimeFirst time.Time + TimeLast time.Time + ZoneTimeFirst time.Time + ZoneTimeLast time.Time + func (r *RRSet) UnmarshalJSON(data []byte) error + func (r RRSet) MarshalJSON() ([]byte, error) + type Rate struct + BurstSize int + BurstWindow int + Expires *time.Time + Limit *int + OffsetMax int + Remaining *int + Reset *time.Time + ResultsMax int + func (r *Rate) UnmarshalJSON(data []byte) error + type RateLimit struct + Rate Rate + func NewRateLimitFromHeaders(header http.Header) (*RateLimit, error) + type RateLimitClient interface + RateLimit func() RateLimitQuery + type RateLimitQuery interface + Do func(ctx context.Context) (RateLimit, error) + type RateLimitResult interface + Rate func() *RateLimit + type Result interface + Ch func() <-chan RRSet + Close func() + Err func() error + type SummarizeClient interface + SummarizeRDataIP func(ip net.IPNet) Query + SummarizeRDataIPRange func(lower, upper net.IP) Query + SummarizeRDataName func(name string) Query + SummarizeRDataRaw func(raw []byte) Query + SummarizeRRSet func(name string) Query