Documentation
¶
Overview ¶
Package miab implements a DNS record management client compatible with the libdns interfaces for https://mailinabox.email/ custom DNS Endpoints. The mailinabox DNS API is limited in that it only works with one zone.
Index ¶
- type Provider
- func (p *Provider) AppendRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
- func (p *Provider) DeleteRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
- func (p *Provider) GetRecords(ctx context.Context, zone string) ([]libdns.Record, error)
- func (p *Provider) SetRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Provider ¶
type Provider struct {
// APIURL is the URL provided by the mailinabox admin interface, found
// on your box here: https://box.[your-domain.com]/admin#custom_dns
// https://box.[your-domain.com]/admin/dns/custom
APIURL string `json:"api_url,omitempty"`
// EmailAddress of an admin account.
// It's recommended that a dedicated account
// be created especially for managing DNS.
EmailAddress string `json:"email_address,omitempty"`
// Password of the admin account that corresponds to the email.
Password string `json:"password,omitempty"`
// TOTP Secret Key of the admin account. Needed if multi factor authentication
// is enabled.
TOTPSecret string `json:"totp_secret,omitempty"`
}
Provider facilitates DNS record manipulation with Mail-In-A-Box.
func (*Provider) AppendRecords ¶
func (p *Provider) AppendRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
AppendRecords adds records to the zone. It returns the records that were added.
func (*Provider) DeleteRecords ¶
func (p *Provider) DeleteRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
DeleteRecords deletes the records from the zone. It returns the records that were deleted.
func (*Provider) GetRecords ¶
GetRecords lists all the records in the zone.
Click to show internal directories.
Click to hide internal directories.