Documentation
¶
Overview ¶
Package dnsimple provides a client for the DNSimple API. In order to use this package you will need a DNSimple account.
Index ¶
- Constants
- func BasicAuthHTTPClient(_ context.Context, username, password string) *http.Client
- func CheckResponse(resp *http.Response) error
- func Int(v int) *int
- func Int64(v int64) *int64
- func StaticTokenHTTPClient(ctx context.Context, token string) *http.Client
- func String(v string) *string
- type AccessToken
- type Account
- type AccountInvitation
- type AccountsResponse
- type AccountsService
- type AuthorizationOptions
- type BasicAuthTransport
- type Certificate
- type CertificateBundle
- type CertificateBundleResponse
- type CertificatePurchase
- type CertificatePurchaseResponse
- type CertificateRenewal
- type CertificateRenewalResponse
- type CertificateResponse
- type CertificatesResponse
- type CertificatesService
- func (s *CertificatesService) DownloadCertificate(ctx context.Context, accountID, domainIdentifier string, certificateID int64) (*CertificateBundleResponse, error)
- func (s *CertificatesService) GetCertificate(ctx context.Context, accountID, domainIdentifier string, certificateID int64) (*CertificateResponse, error)
- func (s *CertificatesService) GetCertificatePrivateKey(ctx context.Context, accountID, domainIdentifier string, certificateID int64) (*CertificateBundleResponse, error)
- func (s *CertificatesService) IssueLetsencryptCertificate(ctx context.Context, accountID, domainIdentifier string, certificateID int64) (*CertificateResponse, error)
- func (s *CertificatesService) IssueLetsencryptCertificateRenewal(ctx context.Context, accountID, domainIdentifier string, ...) (*CertificateResponse, error)
- func (s *CertificatesService) ListCertificates(ctx context.Context, accountID, domainIdentifier string, options *ListOptions) (*CertificatesResponse, error)
- func (s *CertificatesService) PurchaseLetsencryptCertificate(ctx context.Context, accountID, domainIdentifier string, ...) (*CertificatePurchaseResponse, error)
- func (s *CertificatesService) PurchaseLetsencryptCertificateRenewal(ctx context.Context, accountID, domainIdentifier string, certificateID int64, ...) (*CertificateRenewalResponse, error)
- type CheckRegistrantChangeInput
- type Client
- type Collaborator
- type CollaboratorAttributes
- type CollaboratorResponse
- type CollaboratorsResponse
- type Contact
- type ContactResponse
- type ContactsResponse
- type ContactsService
- func (s *ContactsService) CreateContact(ctx context.Context, accountID string, contactAttributes Contact) (*ContactResponse, error)
- func (s *ContactsService) DeleteContact(ctx context.Context, accountID string, contactID int64) (*ContactResponse, error)
- func (s *ContactsService) GetContact(ctx context.Context, accountID string, contactID int64) (*ContactResponse, error)
- func (s *ContactsService) ListContacts(ctx context.Context, accountID string, options *ListOptions) (*ContactsResponse, error)
- func (s *ContactsService) UpdateContact(ctx context.Context, accountID string, contactID int64, ...) (*ContactResponse, error)
- type CreateRegistrantChangeInput
- type Delegation
- type DelegationResponse
- type DelegationSignerRecord
- type DelegationSignerRecordResponse
- type DelegationSignerRecordsResponse
- type Dnssec
- type DnssecResponse
- type Domain
- type DomainCheck
- type DomainCheckResponse
- type DomainListOptions
- type DomainPremiumPrice
- type DomainPremiumPriceOptions
- type DomainPremiumPriceResponse
- type DomainPrice
- type DomainPriceResponse
- type DomainPush
- type DomainPushAttributes
- type DomainPushResponse
- type DomainPushesResponse
- type DomainRegistration
- type DomainRegistrationResponse
- type DomainRenewal
- type DomainRenewalResponse
- type DomainResponse
- type DomainServiceSettings
- type DomainTransfer
- type DomainTransferLock
- type DomainTransferLockResponse
- type DomainTransferOutResponse
- type DomainTransferResponse
- type DomainsResponse
- type DomainsService
- func (s *DomainsService) AcceptPush(ctx context.Context, accountID string, pushID int64, ...) (*DomainPushResponse, error)
- func (s *DomainsService) AddCollaborator(ctx context.Context, accountID string, domainIdentifier string, ...) (*CollaboratorResponse, error)
- func (s *DomainsService) CreateDelegationSignerRecord(ctx context.Context, accountID string, domainIdentifier string, ...) (*DelegationSignerRecordResponse, error)
- func (s *DomainsService) CreateDomain(ctx context.Context, accountID string, domainAttributes Domain) (*DomainResponse, error)
- func (s *DomainsService) CreateEmailForward(ctx context.Context, accountID string, domainIdentifier string, ...) (*EmailForwardResponse, error)
- func (s *DomainsService) DeleteDelegationSignerRecord(ctx context.Context, accountID string, domainIdentifier string, ...) (*DelegationSignerRecordResponse, error)
- func (s *DomainsService) DeleteDomain(ctx context.Context, accountID string, domainIdentifier string) (*DomainResponse, error)
- func (s *DomainsService) DeleteEmailForward(ctx context.Context, accountID string, domainIdentifier string, ...) (*EmailForwardResponse, error)
- func (s *DomainsService) DisableDnssec(ctx context.Context, accountID string, domainIdentifier string) (*DnssecResponse, error)
- func (s *DomainsService) EnableDnssec(ctx context.Context, accountID string, domainIdentifier string) (*DnssecResponse, error)
- func (s *DomainsService) GetDelegationSignerRecord(ctx context.Context, accountID string, domainIdentifier string, ...) (*DelegationSignerRecordResponse, error)
- func (s *DomainsService) GetDnssec(ctx context.Context, accountID string, domainIdentifier string) (*DnssecResponse, error)
- func (s *DomainsService) GetDomain(ctx context.Context, accountID string, domainIdentifier string) (*DomainResponse, error)
- func (s *DomainsService) GetEmailForward(ctx context.Context, accountID string, domainIdentifier string, ...) (*EmailForwardResponse, error)
- func (s *DomainsService) InitiatePush(ctx context.Context, accountID, domainID string, ...) (*DomainPushResponse, error)
- func (s *DomainsService) ListCollaborators(ctx context.Context, accountID, domainIdentifier string, options *ListOptions) (*CollaboratorsResponse, error)
- func (s *DomainsService) ListDelegationSignerRecords(ctx context.Context, accountID string, domainIdentifier string, ...) (*DelegationSignerRecordsResponse, error)
- func (s *DomainsService) ListDomains(ctx context.Context, accountID string, options *DomainListOptions) (*DomainsResponse, error)
- func (s *DomainsService) ListEmailForwards(ctx context.Context, accountID string, domainIdentifier string, ...) (*EmailForwardsResponse, error)
- func (s *DomainsService) ListPushes(ctx context.Context, accountID string, options *ListOptions) (*DomainPushesResponse, error)
- func (s *DomainsService) RejectPush(ctx context.Context, accountID string, pushID int64) (*DomainPushResponse, error)
- func (s *DomainsService) RemoveCollaborator(ctx context.Context, accountID string, domainIdentifier string, ...) (*CollaboratorResponse, error)
- type EmailForward
- type EmailForwardResponse
- type EmailForwardsResponse
- type ErrorResponse
- type ExchangeAuthorizationError
- type ExchangeAuthorizationRequest
- type ExtendedAttribute
- type ExtendedAttributeOption
- type GrantType
- type IdentityService
- type LetsencryptCertificateAttributes
- type ListOptions
- type OauthService
- type Pagination
- type RegisterDomainInput
- type RegistrantChange
- type RegistrantChangeCheck
- type RegistrantChangeCheckResponse
- type RegistrantChangeDeleteResponse
- type RegistrantChangeListOptions
- type RegistrantChangeResponse
- type RegistrantChangesListResponse
- type RegistrarService
- func (s *RegistrarService) CancelDomainTransfer(ctx context.Context, accountID string, domainName string, ...) (*DomainTransferResponse, error)
- func (s *RegistrarService) ChangeDomainDelegation(ctx context.Context, accountID string, domainName string, ...) (*DelegationResponse, error)
- func (s *RegistrarService) ChangeDomainDelegationFromVanity(ctx context.Context, accountID string, domainName string) (*VanityDelegationResponse, error)
- func (s *RegistrarService) ChangeDomainDelegationToVanity(ctx context.Context, accountID string, domainName string, ...) (*VanityDelegationResponse, error)
- func (s *RegistrarService) CheckDomain(ctx context.Context, accountID string, domainName string) (*DomainCheckResponse, error)
- func (s *RegistrarService) CheckRegistrantChange(ctx context.Context, accountID string, input *CheckRegistrantChangeInput) (*RegistrantChangeCheckResponse, error)
- func (s *RegistrarService) CreateRegistrantChange(ctx context.Context, accountID string, input *CreateRegistrantChangeInput) (*RegistrantChangeResponse, error)
- func (s *RegistrarService) DeleteRegistrantChange(ctx context.Context, accountID string, registrantChange int) (*RegistrantChangeDeleteResponse, error)
- func (s *RegistrarService) DisableDomainAutoRenewal(ctx context.Context, accountID string, domainName string) (*DomainResponse, error)
- func (s *RegistrarService) DisableDomainTransferLock(ctx context.Context, accountID string, domainIdentifier string) (*DomainTransferLockResponse, error)
- func (s *RegistrarService) DisableWhoisPrivacy(ctx context.Context, accountID string, domainName string) (*WhoisPrivacyResponse, error)
- func (s *RegistrarService) EnableDomainAutoRenewal(ctx context.Context, accountID string, domainName string) (*DomainResponse, error)
- func (s *RegistrarService) EnableDomainTransferLock(ctx context.Context, accountID string, domainIdentifier string) (*DomainTransferLockResponse, error)
- func (s *RegistrarService) EnableWhoisPrivacy(ctx context.Context, accountID string, domainName string) (*WhoisPrivacyResponse, error)
- func (s *RegistrarService) GetDomainDelegation(ctx context.Context, accountID string, domainName string) (*DelegationResponse, error)
- func (s *RegistrarService) GetDomainPremiumPrice(ctx context.Context, accountID string, domainName string, ...) (*DomainPremiumPriceResponse, error)deprecated
- func (s *RegistrarService) GetDomainPrices(ctx context.Context, accountID string, domainName string) (*DomainPriceResponse, error)
- func (s *RegistrarService) GetDomainRegistration(ctx context.Context, accountID string, domainName string, ...) (*DomainRegistrationResponse, error)
- func (s *RegistrarService) GetDomainRenewal(ctx context.Context, accountID string, domainName string, ...) (*DomainRenewalResponse, error)
- func (s *RegistrarService) GetDomainTransfer(ctx context.Context, accountID string, domainName string, ...) (*DomainTransferResponse, error)
- func (s *RegistrarService) GetDomainTransferLock(ctx context.Context, accountID string, domainIdentifier string) (*DomainTransferLockResponse, error)
- func (s *RegistrarService) GetRegistrantChange(ctx context.Context, accountID string, registrantChange int) (*RegistrantChangeResponse, error)
- func (s *RegistrarService) GetWhoisPrivacy(ctx context.Context, accountID string, domainName string) (*WhoisPrivacyResponse, error)
- func (s *RegistrarService) ListRegistrantChange(ctx context.Context, accountID string, options *RegistrantChangeListOptions) (*RegistrantChangesListResponse, error)
- func (s *RegistrarService) RegisterDomain(ctx context.Context, accountID string, domainName string, ...) (*DomainRegistrationResponse, error)
- func (s *RegistrarService) RenewDomain(ctx context.Context, accountID string, domainName string, ...) (*DomainRenewalResponse, error)
- func (s *RegistrarService) RenewWhoisPrivacy(ctx context.Context, accountID string, domainName string) (*WhoisPrivacyRenewalResponse, error)
- func (s *RegistrarService) TransferDomain(ctx context.Context, accountID string, domainName string, ...) (*DomainTransferResponse, error)
- func (s *RegistrarService) TransferDomainOut(ctx context.Context, accountID string, domainName string) (*DomainTransferOutResponse, error)
- type RenewDomainInput
- type Response
- type Service
- type ServiceResponse
- type ServiceSetting
- type ServicesResponse
- type ServicesService
- func (s *ServicesService) AppliedServices(ctx context.Context, accountID string, domainIdentifier string, ...) (*ServicesResponse, error)
- func (s *ServicesService) ApplyService(ctx context.Context, accountID string, serviceIdentifier string, ...) (*ServiceResponse, error)
- func (s *ServicesService) GetService(ctx context.Context, serviceIdentifier string) (*ServiceResponse, error)
- func (s *ServicesService) ListServices(ctx context.Context, options *ListOptions) (*ServicesResponse, error)
- func (s *ServicesService) UnapplyService(ctx context.Context, accountID string, serviceIdentifier string, ...) (*ServiceResponse, error)
- type Template
- type TemplateRecord
- type TemplateRecordResponse
- type TemplateRecordsResponse
- type TemplateResponse
- type TemplatesResponse
- type TemplatesService
- func (s *TemplatesService) ApplyTemplate(ctx context.Context, accountID string, templateIdentifier string, ...) (*TemplateResponse, error)
- func (s *TemplatesService) CreateTemplate(ctx context.Context, accountID string, templateAttributes Template) (*TemplateResponse, error)
- func (s *TemplatesService) CreateTemplateRecord(ctx context.Context, accountID string, templateIdentifier string, ...) (*TemplateRecordResponse, error)
- func (s *TemplatesService) DeleteTemplate(ctx context.Context, accountID string, templateIdentifier string) (*TemplateResponse, error)
- func (s *TemplatesService) DeleteTemplateRecord(ctx context.Context, accountID string, templateIdentifier string, ...) (*TemplateRecordResponse, error)
- func (s *TemplatesService) GetTemplate(ctx context.Context, accountID string, templateIdentifier string) (*TemplateResponse, error)
- func (s *TemplatesService) GetTemplateRecord(ctx context.Context, accountID string, templateIdentifier string, ...) (*TemplateRecordResponse, error)
- func (s *TemplatesService) ListTemplateRecords(ctx context.Context, accountID string, templateIdentifier string, ...) (*TemplateRecordsResponse, error)
- func (s *TemplatesService) ListTemplates(ctx context.Context, accountID string, options *ListOptions) (*TemplatesResponse, error)
- func (s *TemplatesService) UpdateTemplate(ctx context.Context, accountID string, templateIdentifier string, ...) (*TemplateResponse, error)
- type Tld
- type TldExtendedAttribute
- type TldExtendedAttributeOption
- type TldExtendedAttributesResponse
- type TldResponse
- type TldsResponse
- type TldsService
- func (s *TldsService) GetTld(ctx context.Context, tld string) (*TldResponse, error)
- func (s *TldsService) GetTldExtendedAttributes(ctx context.Context, tld string) (*TldExtendedAttributesResponse, error)
- func (s *TldsService) ListTlds(ctx context.Context, options *ListOptions) (*TldsResponse, error)
- type TransferDomainInput
- type User
- type VanityDelegationResponse
- type VanityNameServer
- type VanityNameServerResponse
- type VanityNameServersService
- func (s *VanityNameServersService) DisableVanityNameServers(ctx context.Context, accountID string, domainIdentifier string) (*VanityNameServerResponse, error)
- func (s *VanityNameServersService) EnableVanityNameServers(ctx context.Context, accountID string, domainIdentifier string) (*VanityNameServerResponse, error)
- type Webhook
- type WebhookResponse
- type WebhooksResponse
- type WebhooksService
- func (s *WebhooksService) CreateWebhook(ctx context.Context, accountID string, webhookAttributes Webhook) (*WebhookResponse, error)
- func (s *WebhooksService) DeleteWebhook(ctx context.Context, accountID string, webhookID int64) (*WebhookResponse, error)
- func (s *WebhooksService) GetWebhook(ctx context.Context, accountID string, webhookID int64) (*WebhookResponse, error)
- func (s *WebhooksService) ListWebhooks(ctx context.Context, accountID string, _ *ListOptions) (*WebhooksResponse, error)
- type WhoamiData
- type WhoamiResponse
- type WhoisPrivacy
- type WhoisPrivacyRenewal
- type WhoisPrivacyRenewalResponse
- type WhoisPrivacyResponse
- type Zone
- type ZoneDistribution
- type ZoneDistributionResponse
- type ZoneFile
- type ZoneFileResponse
- type ZoneListOptions
- type ZoneRecord
- type ZoneRecordAttributes
- type ZoneRecordListOptions
- type ZoneRecordResponse
- type ZoneRecordsResponse
- type ZoneResponse
- type ZonesResponse
- type ZonesService
- func (s *ZonesService) ActivateZoneDns(ctx context.Context, accountID string, zoneName string) (*ZoneResponse, error)
- func (s *ZonesService) CheckZoneDistribution(ctx context.Context, accountID string, zoneName string) (*ZoneDistributionResponse, error)
- func (s *ZonesService) CheckZoneRecordDistribution(ctx context.Context, accountID string, zoneName string, recordID int64) (*ZoneDistributionResponse, error)
- func (s *ZonesService) CreateRecord(ctx context.Context, accountID string, zoneName string, ...) (*ZoneRecordResponse, error)
- func (s *ZonesService) DeactivateZoneDns(ctx context.Context, accountID string, zoneName string) (*ZoneResponse, error)
- func (s *ZonesService) DeleteRecord(ctx context.Context, accountID string, zoneName string, recordID int64) (*ZoneRecordResponse, error)
- func (s *ZonesService) GetRecord(ctx context.Context, accountID string, zoneName string, recordID int64) (*ZoneRecordResponse, error)
- func (s *ZonesService) GetZone(ctx context.Context, accountID string, zoneName string) (*ZoneResponse, error)
- func (s *ZonesService) GetZoneFile(ctx context.Context, accountID string, zoneName string) (*ZoneFileResponse, error)
- func (s *ZonesService) ListRecords(ctx context.Context, accountID string, zoneName string, ...) (*ZoneRecordsResponse, error)
- func (s *ZonesService) ListZones(ctx context.Context, accountID string, options *ZoneListOptions) (*ZonesResponse, error)
- func (s *ZonesService) UpdateRecord(ctx context.Context, accountID string, zoneName string, recordID int64, ...) (*ZoneRecordResponse, error)
Constants ¶
const ( // AuthorizationCodeGrant is the type of access token request // for an Authorization Code Grant flow. // https://tools.ietf.org/html/rfc6749#section-4.1 AuthorizationCodeGrant = GrantType("authorization_code") )
const ( // Version identifies the current library version. // This is a pro-forma convention given that Go dependencies // tends to be fetched directly from the repo. // It is also used in the user-agent identify the client. Version = "1.4.1" )
Variables ¶
This section is empty.
Functions ¶
func BasicAuthHTTPClient ¶ added in v0.61.0
BasicAuthHTTPClient returns a client that authenticates via HTTP Basic Auth with given username and password.
func CheckResponse ¶
CheckResponse checks the API response for errors, and returns them if present. A response is considered an error if the status code is different than 2xx. Specific requests may have additional requirements, but this is sufficient in most of the cases.
func Int ¶ added in v0.60.0
Int is a helper routine that allocates a new int value to store v and returns a pointer to it.
func Int64 ¶ added in v0.60.0
Int64 is a helper routine that allocates a new int64 value to store v and returns a pointer to it.
func StaticTokenHTTPClient ¶ added in v0.61.0
StaticTokenHTTPClient returns a client that authenticates with a static OAuth token.
Types ¶
type AccessToken ¶
type AccessToken struct { Token string `json:"access_token"` Type string `json:"token_type"` AccountID int64 `json:"account_id"` }
AccessToken represents a DNSimple Oauth access token.
type Account ¶
type Account struct { ID int64 `json:"id,omitempty"` Email string `json:"email,omitempty"` PlanIdentifier string `json:"plan_identifier,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
Account represents a DNSimple account.
type AccountInvitation ¶ added in v0.63.0
type AccountInvitation struct { ID int64 `json:"id,omitempty"` Email string `json:"email,omitempty"` Token string `json:"token,omitempty"` AccountID int64 `json:"account_id,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` InvitationSentAt string `json:"invitation_sent_at,omitempty"` InvitationAcceptedAt string `json:"invitation_accepted_at,omitempty"` }
AccountInvitation represents an invitation to a DNSimple account.
type AccountsResponse ¶ added in v0.13.0
AccountsResponse represents a response from an API method that returns a collection of Account struct.
type AccountsService ¶ added in v0.13.0
type AccountsService struct {
// contains filtered or unexported fields
}
AccountsService handles communication with the account related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/accounts/
func (*AccountsService) ListAccounts ¶ added in v0.13.0
func (s *AccountsService) ListAccounts(ctx context.Context, options *ListOptions) (*AccountsResponse, error)
ListAccounts list the accounts for an user.
type AuthorizationOptions ¶
type AuthorizationOptions struct { RedirectURI string `url:"redirect_uri,omitempty"` // A randomly generated string to verify the validity of the request. // Currently "state" is required by the DNSimple OAuth implementation, so you must specify it. State string `url:"state,omitempty"` }
AuthorizationOptions represents the option you can use to generate an authorization URL.
type BasicAuthTransport ¶ added in v0.20.0
type BasicAuthTransport struct { Username string Password string // Transport is the transport RoundTripper used to make HTTP requests. // If nil, http.DefaultTransport is used. Transport http.RoundTripper }
BasicAuthTransport is an http.RoundTripper that authenticates all requests using HTTP Basic Authentication with the provided username and password.
func (*BasicAuthTransport) Client ¶ added in v0.20.0
func (t *BasicAuthTransport) Client() *http.Client
Client returns an *http.Client that uses the BasicAuthTransport transport to authenticate the request via HTTP Basic Auth.
type Certificate ¶ added in v0.13.0
type Certificate struct { ID int64 `json:"id,omitempty"` DomainID int64 `json:"domain_id,omitempty"` // Deprecated: ContactID is deprecated and its value is ignored and will be removed in the next major version. ContactID int64 `json:"contact_id,omitempty"` CommonName string `json:"common_name,omitempty"` AlternateNames []string `json:"alternate_names,omitempty"` Years int `json:"years,omitempty"` State string `json:"state,omitempty"` AuthorityIdentifier string `json:"authority_identifier,omitempty"` AutoRenew bool `json:"auto_renew"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` ExpiresAt string `json:"expires_at,omitempty"` CertificateRequest string `json:"csr,omitempty"` }
Certificate represents a Certificate in DNSimple.
type CertificateBundle ¶ added in v0.13.0
type CertificateBundle struct { // CertificateRequest string `json:"csr,omitempty"` PrivateKey string `json:"private_key,omitempty"` ServerCertificate string `json:"server,omitempty"` RootCertificate string `json:"root,omitempty"` IntermediateCertificates []string `json:"chain,omitempty"` }
CertificateBundle represents a container for all the PEM-encoded X509 certificate entities, such as the private key, the server certificate and the intermediate chain.
type CertificateBundleResponse ¶ added in v0.13.0
type CertificateBundleResponse struct { Response Data *CertificateBundle `json:"data"` }
CertificateBundleResponse represents a response from an API method that returns a CertificatBundle struct.
type CertificatePurchase ¶ added in v0.16.0
type CertificatePurchase struct { ID int64 `json:"id,omitempty"` CertificateID int64 `json:"certificate_id,omitempty"` State string `json:"state,omitempty"` AutoRenew bool `json:"auto_renew,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
CertificatePurchase represents a Certificate Purchase in DNSimple.
type CertificatePurchaseResponse ¶ added in v0.50.0
type CertificatePurchaseResponse struct { Response Data *CertificatePurchase `json:"data"` }
CertificatePurchaseResponse represents a response from an API method that returns a CertificatePurchase struct.
type CertificateRenewal ¶ added in v0.16.0
type CertificateRenewal struct { ID int64 `json:"id,omitempty"` OldCertificateID int64 `json:"old_certificate_id,omitempty"` NewCertificateID int64 `json:"new_certificate_id,omitempty"` State string `json:"state,omitempty"` AutoRenew bool `json:"auto_renew,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
CertificateRenewal represents a Certificate Renewal in DNSimple.
type CertificateRenewalResponse ¶ added in v0.50.0
type CertificateRenewalResponse struct { Response Data *CertificateRenewal `json:"data"` }
CertificateRenewalResponse represents a response from an API method that returns a CertificateRenewal struct.
type CertificateResponse ¶ added in v0.13.0
type CertificateResponse struct { Response Data *Certificate `json:"data"` }
CertificateResponse represents a response from an API method that returns a Certificate struct.
type CertificatesResponse ¶ added in v0.13.0
type CertificatesResponse struct { Response Data []Certificate `json:"data"` }
CertificatesResponse represents a response from an API method that returns a collection of Certificate struct.
type CertificatesService ¶ added in v0.13.0
type CertificatesService struct {
// contains filtered or unexported fields
}
CertificatesService handles communication with the certificate related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/certificates/
func (*CertificatesService) DownloadCertificate ¶ added in v0.13.0
func (s *CertificatesService) DownloadCertificate(ctx context.Context, accountID, domainIdentifier string, certificateID int64) (*CertificateBundleResponse, error)
DownloadCertificate gets the PEM-encoded certificate, along with the root certificate and intermediate chain.
See https://developer.dnsimple.com/v2/certificates#downloadCertificate
func (*CertificatesService) GetCertificate ¶ added in v0.13.0
func (s *CertificatesService) GetCertificate(ctx context.Context, accountID, domainIdentifier string, certificateID int64) (*CertificateResponse, error)
GetCertificate gets the details of a certificate.
See https://developer.dnsimple.com/v2/certificates#getCertificate
func (*CertificatesService) GetCertificatePrivateKey ¶ added in v0.13.0
func (s *CertificatesService) GetCertificatePrivateKey(ctx context.Context, accountID, domainIdentifier string, certificateID int64) (*CertificateBundleResponse, error)
GetCertificatePrivateKey gets the PEM-encoded certificate private key.
See https://developer.dnsimple.com/v2/certificates#getCertificatePrivateKey
func (*CertificatesService) IssueLetsencryptCertificate ¶ added in v0.16.0
func (s *CertificatesService) IssueLetsencryptCertificate(ctx context.Context, accountID, domainIdentifier string, certificateID int64) (*CertificateResponse, error)
IssueLetsencryptCertificate issues a pending Let's Encrypt certificate purchase order.
See https://developer.dnsimple.com/v2/certificates/#issueLetsencryptCertificate
func (*CertificatesService) IssueLetsencryptCertificateRenewal ¶ added in v0.16.0
func (s *CertificatesService) IssueLetsencryptCertificateRenewal(ctx context.Context, accountID, domainIdentifier string, certificateID, certificateRenewalID int64) (*CertificateResponse, error)
IssueLetsencryptCertificateRenewal issues a pending Let's Encrypt certificate renewal order.
See https://developer.dnsimple.com/v2/certificates/#issueRenewalLetsencryptCertificate
func (*CertificatesService) ListCertificates ¶ added in v0.13.0
func (s *CertificatesService) ListCertificates(ctx context.Context, accountID, domainIdentifier string, options *ListOptions) (*CertificatesResponse, error)
ListCertificates lists the certificates for a domain in the account.
See https://developer.dnsimple.com/v2/certificates#listCertificates
func (*CertificatesService) PurchaseLetsencryptCertificate ¶ added in v0.16.0
func (s *CertificatesService) PurchaseLetsencryptCertificate(ctx context.Context, accountID, domainIdentifier string, certificateAttributes LetsencryptCertificateAttributes) (*CertificatePurchaseResponse, error)
PurchaseLetsencryptCertificate purchases a Let's Encrypt certificate.
See https://developer.dnsimple.com/v2/certificates/#purchaseLetsencryptCertificate
func (*CertificatesService) PurchaseLetsencryptCertificateRenewal ¶ added in v0.16.0
func (s *CertificatesService) PurchaseLetsencryptCertificateRenewal(ctx context.Context, accountID, domainIdentifier string, certificateID int64, certificateAttributes LetsencryptCertificateAttributes) (*CertificateRenewalResponse, error)
PurchaseLetsencryptCertificateRenewal purchases a Let's Encrypt certificate renewal.
See https://developer.dnsimple.com/v2/certificates/#purchaseRenewalLetsencryptCertificate
type CheckRegistrantChangeInput ¶ added in v1.3.0
type Client ¶
type Client struct { // BaseURL for API requests. // Defaults to the public DNSimple API, but can be set to a different endpoint (e.g. the sandbox). BaseURL string // UserAgent used when communicating with the DNSimple API. UserAgent string // Services used for talking to different parts of the DNSimple API. Identity *IdentityService Accounts *AccountsService Certificates *CertificatesService Contacts *ContactsService Domains *DomainsService Oauth *OauthService Registrar *RegistrarService Services *ServicesService Templates *TemplatesService Tlds *TldsService VanityNameServers *VanityNameServersService Webhooks *WebhooksService Zones *ZonesService // Set to true to output debugging logs during API calls Debug bool // contains filtered or unexported fields }
Client represents a client to the DNSimple API.
func NewClient ¶
NewClient returns a new DNSimple API client.
To authenticate you must provide an http.Client that will perform authentication for you with one of the currently supported mechanisms: OAuth or HTTP Basic.
func (*Client) Request ¶ added in v0.50.0
func (c *Client) Request(ctx context.Context, method, path string, payload, obj interface{}, headers http.Header) (*http.Response, error)
Request executes an API request with the current client scope, and returns the response.
func (*Client) SetUserAgent ¶ added in v0.50.0
SetUserAgent overrides the default UserAgent.
When a custom user agent is provided, the final user agent is the combination of the custom user agent prepended by the default user agent.
customAgentFlag dnsimple-go/1.0
type Collaborator ¶ added in v0.14.0
type Collaborator struct { ID int64 `json:"id,omitempty"` DomainID int64 `json:"domain_id,omitempty"` DomainName string `json:"domain_name,omitempty"` UserID int64 `json:"user_id,omitempty"` UserEmail string `json:"user_email,omitempty"` Invitation bool `json:"invitation,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` AcceptedAt string `json:"accepted_at,omitempty"` }
Collaborator represents a Collaborator in DNSimple.
type CollaboratorAttributes ¶ added in v0.14.0
type CollaboratorAttributes struct {
Email string `json:"email,omitempty"`
}
CollaboratorAttributes represents Collaborator attributes for AddCollaborator operation.
type CollaboratorResponse ¶ added in v0.14.0
type CollaboratorResponse struct { Response Data *Collaborator `json:"data"` }
CollaboratorResponse represents a response from an API method that returns a Collaborator struct.
type CollaboratorsResponse ¶ added in v0.14.0
type CollaboratorsResponse struct { Response Data []Collaborator `json:"data"` }
CollaboratorsResponse represents a response from an API method that returns a collection of Collaborator struct.
type Contact ¶
type Contact struct { ID int64 `json:"id,omitempty"` AccountID int64 `json:"account_id,omitempty"` Label string `json:"label,omitempty"` FirstName string `json:"first_name,omitempty"` LastName string `json:"last_name,omitempty"` JobTitle string `json:"job_title,omitempty"` Organization string `json:"organization_name,omitempty"` Address1 string `json:"address1,omitempty"` Address2 string `json:"address2,omitempty"` City string `json:"city,omitempty"` StateProvince string `json:"state_province,omitempty"` PostalCode string `json:"postal_code,omitempty"` Country string `json:"country,omitempty"` Phone string `json:"phone,omitempty"` Fax string `json:"fax,omitempty"` Email string `json:"email,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
Contact represents a Contact in DNSimple.
type ContactResponse ¶
ContactResponse represents a response from an API method that returns a Contact struct.
type ContactsResponse ¶
ContactsResponse represents a response from an API method that returns a collection of Contact struct.
type ContactsService ¶
type ContactsService struct {
// contains filtered or unexported fields
}
ContactsService handles communication with the contact related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/contacts/
func (*ContactsService) CreateContact ¶
func (s *ContactsService) CreateContact(ctx context.Context, accountID string, contactAttributes Contact) (*ContactResponse, error)
CreateContact creates a new contact.
func (*ContactsService) DeleteContact ¶
func (s *ContactsService) DeleteContact(ctx context.Context, accountID string, contactID int64) (*ContactResponse, error)
DeleteContact PERMANENTLY deletes a contact from the account.
func (*ContactsService) GetContact ¶
func (s *ContactsService) GetContact(ctx context.Context, accountID string, contactID int64) (*ContactResponse, error)
GetContact fetches a contact.
func (*ContactsService) ListContacts ¶
func (s *ContactsService) ListContacts(ctx context.Context, accountID string, options *ListOptions) (*ContactsResponse, error)
ListContacts list the contacts for an account.
func (*ContactsService) UpdateContact ¶
func (s *ContactsService) UpdateContact(ctx context.Context, accountID string, contactID int64, contactAttributes Contact) (*ContactResponse, error)
UpdateContact updates a contact.
type CreateRegistrantChangeInput ¶ added in v1.3.0
type Delegation ¶
type Delegation []string
Delegation represents a list of name servers that correspond to a domain delegation.
type DelegationResponse ¶
type DelegationResponse struct { Response Data *Delegation `json:"data"` }
DelegationResponse represents a response from an API method that returns a delegation struct.
type DelegationSignerRecord ¶ added in v0.15.0
type DelegationSignerRecord struct { ID int64 `json:"id,omitempty"` DomainID int64 `json:"domain_id,omitempty"` Algorithm string `json:"algorithm"` Digest string `json:"digest,omitempty"` DigestType string `json:"digest_type,omitempty"` Keytag string `json:"keytag,omitempty"` PublicKey string `json:"public_key,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
DelegationSignerRecord represents a delegation signer record for a domain in DNSimple.
type DelegationSignerRecordResponse ¶ added in v0.50.0
type DelegationSignerRecordResponse struct { Response Data *DelegationSignerRecord `json:"data"` }
DelegationSignerRecordResponse represents a response from an API method that returns a DelegationSignerRecord struct.
type DelegationSignerRecordsResponse ¶ added in v0.50.0
type DelegationSignerRecordsResponse struct { Response Data []DelegationSignerRecord `json:"data"` }
DelegationSignerRecordsResponse represents a response from an API method that returns a DelegationSignerRecord struct.
type Dnssec ¶ added in v0.15.0
type Dnssec struct {
Enabled bool `json:"enabled"`
}
Dnssec represents the current DNSSEC settings for a domain in DNSimple.
type DnssecResponse ¶ added in v0.50.0
DnssecResponse represents a response from an API method that returns a Dnssec struct.
type Domain ¶
type Domain struct { ID int64 `json:"id,omitempty"` AccountID int64 `json:"account_id,omitempty"` RegistrantID int64 `json:"registrant_id,omitempty"` Name string `json:"name,omitempty"` UnicodeName string `json:"unicode_name,omitempty"` Token string `json:"token,omitempty"` State string `json:"state,omitempty"` AutoRenew bool `json:"auto_renew,omitempty"` PrivateWhois bool `json:"private_whois,omitempty"` ExpiresAt string `json:"expires_at,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
Domain represents a domain in DNSimple.
type DomainCheck ¶
type DomainCheck struct { Domain string `json:"domain"` Available bool `json:"available"` Premium bool `json:"premium"` }
DomainCheck represents the result of a domain check.
type DomainCheckResponse ¶
type DomainCheckResponse struct { Response Data *DomainCheck `json:"data"` }
DomainCheckResponse represents a response from a domain check request.
type DomainListOptions ¶
type DomainListOptions struct { // Select domains where the name contains given string. NameLike *string `url:"name_like,omitempty"` // Select domains where the registrant matches given ID. RegistrantID *int `url:"registrant_id,omitempty"` ListOptions }
DomainListOptions specifies the optional parameters you can provide to customize the DomainsService.ListDomains method.
type DomainPremiumPrice ¶ added in v0.14.0
type DomainPremiumPrice struct { // The domain premium price PremiumPrice string `json:"premium_price"` // The registrar action. // Possible values are registration|transfer|renewal Action string `json:"action"` }
DomainPremiumPrice represents the premium price for a premium domain.
type DomainPremiumPriceOptions ¶ added in v0.14.0
type DomainPremiumPriceOptions struct {
Action string `url:"action,omitempty"`
}
DomainPremiumPriceOptions specifies the optional parameters you can provide to customize the RegistrarService.GetDomainPremiumPrice method.
type DomainPremiumPriceResponse ¶ added in v0.14.0
type DomainPremiumPriceResponse struct { Response Data *DomainPremiumPrice `json:"data"` }
DomainPremiumPriceResponse represents a response from a domain premium price request.
type DomainPrice ¶ added in v0.70.0
type DomainPrice struct { Domain string `json:"domain"` Premium bool `json:"premium"` RegistrationPrice float64 `json:"registration_price"` RenewalPrice float64 `json:"renewal_price"` TransferPrice float64 `json:"transfer_price"` }
DomainPrice represents the result of a domain prices call.
type DomainPriceResponse ¶ added in v0.70.0
type DomainPriceResponse struct { Response Data *DomainPrice `json:"data"` }
DomainPriceResponse represents a response from an API method that returns a DomainPrice struct.
type DomainPush ¶ added in v0.14.0
type DomainPush struct { ID int64 `json:"id,omitempty"` DomainID int64 `json:"domain_id,omitempty"` ContactID int64 `json:"contact_id,omitempty"` AccountID int64 `json:"account_id,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` AcceptedAt string `json:"accepted_at,omitempty"` }
DomainPush represents a domain push in DNSimple.
type DomainPushAttributes ¶ added in v0.14.0
type DomainPushAttributes struct { NewAccountEmail string `json:"new_account_email,omitempty"` ContactID int64 `json:"contact_id,omitempty"` }
DomainPushAttributes represent a domain push payload (see initiate).
type DomainPushResponse ¶ added in v0.14.0
type DomainPushResponse struct { Response Data *DomainPush `json:"data"` }
DomainPushResponse represents a response from an API method that returns a DomainPush struct.
type DomainPushesResponse ¶ added in v0.14.0
type DomainPushesResponse struct { Response Data []DomainPush `json:"data"` }
DomainPushesResponse represents a response from an API method that returns a collection of DomainPush struct.
type DomainRegistration ¶ added in v0.14.0
type DomainRegistration struct { ID int64 `json:"id"` DomainID int64 `json:"domain_id"` RegistrantID int64 `json:"registrant_id"` Period int `json:"period"` State string `json:"state"` AutoRenew bool `json:"auto_renew"` WhoisPrivacy bool `json:"whois_privacy"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
DomainRegistration represents the result of a domain registration call.
type DomainRegistrationResponse ¶
type DomainRegistrationResponse struct { Response Data *DomainRegistration `json:"data"` }
DomainRegistrationResponse represents a response from an API method that results in a domain registration.
type DomainRenewal ¶ added in v0.14.0
type DomainRenewal struct { ID int64 `json:"id"` DomainID int64 `json:"domain_id"` Period int `json:"period"` State string `json:"state"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
DomainRenewal represents the result of a domain renewal call.
type DomainRenewalResponse ¶
type DomainRenewalResponse struct { Response Data *DomainRenewal `json:"data"` }
DomainRenewalResponse represents a response from an API method that returns a domain renewal.
type DomainResponse ¶
DomainResponse represents a response from an API method that returns a Domain struct.
type DomainServiceSettings ¶ added in v0.13.0
DomainServiceSettings represents optional settings when applying a DNSimple one-click service to a domain.
type DomainTransfer ¶ added in v0.14.0
type DomainTransfer struct { ID int64 `json:"id"` DomainID int64 `json:"domain_id"` RegistrantID int64 `json:"registrant_id"` State string `json:"state"` AutoRenew bool `json:"auto_renew"` WhoisPrivacy bool `json:"whois_privacy"` StatusDescription string `json:"status_description"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
DomainTransfer represents the result of a domain transfer call.
type DomainTransferLock ¶ added in v1.4.0
type DomainTransferLock struct {
Enabled bool `json:"enabled"`
}
type DomainTransferLockResponse ¶ added in v1.4.0
type DomainTransferLockResponse struct { Response Data *DomainTransferLock `json:"data"` }
type DomainTransferOutResponse ¶
DomainTransferOutResponse represents a response from an API method that results in a domain transfer out.
type DomainTransferResponse ¶
type DomainTransferResponse struct { Response Data *DomainTransfer `json:"data"` }
DomainTransferResponse represents a response from an API method that results in a domain transfer.
type DomainsResponse ¶
DomainsResponse represents a response from an API method that returns a collection of Domain struct.
type DomainsService ¶
type DomainsService struct {
// contains filtered or unexported fields
}
DomainsService handles communication with the domain related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/domains/
func (*DomainsService) AcceptPush ¶ added in v0.14.0
func (s *DomainsService) AcceptPush(ctx context.Context, accountID string, pushID int64, pushAttributes DomainPushAttributes) (*DomainPushResponse, error)
AcceptPush accept a push for a domain.
See https://developer.dnsimple.com/v2/domains/pushes/#acceptPush
func (*DomainsService) AddCollaborator ¶ added in v0.14.0
func (s *DomainsService) AddCollaborator(ctx context.Context, accountID string, domainIdentifier string, attributes CollaboratorAttributes) (*CollaboratorResponse, error)
AddCollaborator adds a new collaborator to the domain in the account.
See https://developer.dnsimple.com/v2/domains/collaborators#add
func (*DomainsService) CreateDelegationSignerRecord ¶ added in v0.15.0
func (s *DomainsService) CreateDelegationSignerRecord(ctx context.Context, accountID string, domainIdentifier string, dsRecordAttributes DelegationSignerRecord) (*DelegationSignerRecordResponse, error)
CreateDelegationSignerRecord creates a new delegation signer record.
See https://developer.dnsimple.com/v2/domains/dnssec/#ds-record-create
func (*DomainsService) CreateDomain ¶
func (s *DomainsService) CreateDomain(ctx context.Context, accountID string, domainAttributes Domain) (*DomainResponse, error)
CreateDomain creates a new domain in the account.
func (*DomainsService) CreateEmailForward ¶
func (s *DomainsService) CreateEmailForward(ctx context.Context, accountID string, domainIdentifier string, forwardAttributes EmailForward) (*EmailForwardResponse, error)
CreateEmailForward creates a new email forward.
See https://developer.dnsimple.com/v2/domains/email-forwards/#create
func (*DomainsService) DeleteDelegationSignerRecord ¶ added in v0.15.0
func (s *DomainsService) DeleteDelegationSignerRecord(ctx context.Context, accountID string, domainIdentifier string, dsRecordID int64) (*DelegationSignerRecordResponse, error)
DeleteDelegationSignerRecord PERMANENTLY deletes a delegation signer record from the domain.
See https://developer.dnsimple.com/v2/domains/dnssec/#ds-record-delete
func (*DomainsService) DeleteDomain ¶
func (s *DomainsService) DeleteDomain(ctx context.Context, accountID string, domainIdentifier string) (*DomainResponse, error)
DeleteDomain PERMANENTLY deletes a domain from the account.
func (*DomainsService) DeleteEmailForward ¶
func (s *DomainsService) DeleteEmailForward(ctx context.Context, accountID string, domainIdentifier string, forwardID int64) (*EmailForwardResponse, error)
DeleteEmailForward PERMANENTLY deletes an email forward from the domain.
See https://developer.dnsimple.com/v2/domains/email-forwards/#delete
func (*DomainsService) DisableDnssec ¶ added in v0.15.0
func (s *DomainsService) DisableDnssec(ctx context.Context, accountID string, domainIdentifier string) (*DnssecResponse, error)
DisableDnssec disables DNSSEC on the domain.
See https://developer.dnsimple.com/v2/domains/dnssec/#disableDomainDnssec
func (*DomainsService) EnableDnssec ¶ added in v0.15.0
func (s *DomainsService) EnableDnssec(ctx context.Context, accountID string, domainIdentifier string) (*DnssecResponse, error)
EnableDnssec enables DNSSEC on the domain.
See https://developer.dnsimple.com/v2/domains/dnssec/#enableDomainDnssec
func (*DomainsService) GetDelegationSignerRecord ¶ added in v0.15.0
func (s *DomainsService) GetDelegationSignerRecord(ctx context.Context, accountID string, domainIdentifier string, dsRecordID int64) (*DelegationSignerRecordResponse, error)
GetDelegationSignerRecord fetches a delegation signer record.
See https://developer.dnsimple.com/v2/domains/dnssec/#ds-record-get
func (*DomainsService) GetDnssec ¶ added in v0.15.0
func (s *DomainsService) GetDnssec(ctx context.Context, accountID string, domainIdentifier string) (*DnssecResponse, error)
GetDnssec retrieves the current status of DNSSEC on the domain.
See https://developer.dnsimple.com/v2/domains/dnssec/#getDomainDnssec
func (*DomainsService) GetDomain ¶
func (s *DomainsService) GetDomain(ctx context.Context, accountID string, domainIdentifier string) (*DomainResponse, error)
GetDomain fetches a domain.
func (*DomainsService) GetEmailForward ¶
func (s *DomainsService) GetEmailForward(ctx context.Context, accountID string, domainIdentifier string, forwardID int64) (*EmailForwardResponse, error)
GetEmailForward fetches an email forward.
See https://developer.dnsimple.com/v2/domains/email-forwards/#get
func (*DomainsService) InitiatePush ¶ added in v0.14.0
func (s *DomainsService) InitiatePush(ctx context.Context, accountID, domainID string, pushAttributes DomainPushAttributes) (*DomainPushResponse, error)
InitiatePush initiate a new domain push.
See https://developer.dnsimple.com/v2/domains/pushes/#initiateDomainPush
func (*DomainsService) ListCollaborators ¶ added in v0.14.0
func (s *DomainsService) ListCollaborators(ctx context.Context, accountID, domainIdentifier string, options *ListOptions) (*CollaboratorsResponse, error)
ListCollaborators list the collaborators for a domain.
See https://developer.dnsimple.com/v2/domains/collaborators#list
func (*DomainsService) ListDelegationSignerRecords ¶ added in v0.15.0
func (s *DomainsService) ListDelegationSignerRecords(ctx context.Context, accountID string, domainIdentifier string, options *ListOptions) (*DelegationSignerRecordsResponse, error)
ListDelegationSignerRecords lists the delegation signer records for a domain.
See https://developer.dnsimple.com/v2/domains/dnssec/#ds-record-list
func (*DomainsService) ListDomains ¶
func (s *DomainsService) ListDomains(ctx context.Context, accountID string, options *DomainListOptions) (*DomainsResponse, error)
ListDomains lists the domains for an account.
func (*DomainsService) ListEmailForwards ¶
func (s *DomainsService) ListEmailForwards(ctx context.Context, accountID string, domainIdentifier string, options *ListOptions) (*EmailForwardsResponse, error)
ListEmailForwards lists the email forwards for a domain.
See https://developer.dnsimple.com/v2/domains/email-forwards/#list
func (*DomainsService) ListPushes ¶ added in v0.14.0
func (s *DomainsService) ListPushes(ctx context.Context, accountID string, options *ListOptions) (*DomainPushesResponse, error)
ListPushes lists the pushes for an account.
See https://developer.dnsimple.com/v2/domains/pushes/#listPushes
func (*DomainsService) RejectPush ¶ added in v0.14.0
func (s *DomainsService) RejectPush(ctx context.Context, accountID string, pushID int64) (*DomainPushResponse, error)
RejectPush reject a push for a domain.
See https://developer.dnsimple.com/v2/domains/pushes/#rejectPush
func (*DomainsService) RemoveCollaborator ¶ added in v0.14.0
func (s *DomainsService) RemoveCollaborator(ctx context.Context, accountID string, domainIdentifier string, collaboratorID int64) (*CollaboratorResponse, error)
RemoveCollaborator PERMANENTLY deletes a domain from the account.
See https://developer.dnsimple.com/v2/domains/collaborators#remove
type EmailForward ¶
type EmailForward struct { ID int64 `json:"id,omitempty"` DomainID int64 `json:"domain_id,omitempty"` // Deprecated: for requests, please use `AliasName` instead; for responses, please use `AliasEmail` instead. From string `json:"from,omitempty"` // WARNING: This is not set in responses, please use `AliasEmail` instead. AliasName string `json:"alias_name,omitempty"` // WARNING: This is not used by requests, please use `AliasName` instead. AliasEmail string `json:"alias_email,omitempty"` // Deprecated: please use `DestinationEmail` instead. To string `json:"to,omitempty"` DestinationEmail string `json:"destination_email,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
EmailForward represents an email forward in DNSimple.
type EmailForwardResponse ¶
type EmailForwardResponse struct { Response Data *EmailForward `json:"data"` }
EmailForwardResponse represents a response from an API method that returns an EmailForward struct.
type EmailForwardsResponse ¶
type EmailForwardsResponse struct { Response Data []EmailForward `json:"data"` }
EmailForwardsResponse represents a response from an API method that returns a collection of EmailForward struct.
type ErrorResponse ¶
type ErrorResponse struct { Response // human-readable message Message string `json:"message"` // detailed validation errors AttributeErrors map[string][]string `json:"errors"` }
An ErrorResponse represents an API response that generated an error.
func (*ErrorResponse) Error ¶
func (r *ErrorResponse) Error() string
Error implements the error interface.
type ExchangeAuthorizationError ¶
type ExchangeAuthorizationError struct { // HTTP response HTTPResponse *http.Response ErrorCode string `json:"error"` ErrorDescription string `json:"error_description"` }
ExchangeAuthorizationError represents a failed request to exchange an authorization code for an access token.
func (*ExchangeAuthorizationError) Error ¶
func (r *ExchangeAuthorizationError) Error() string
Error implements the error interface.
type ExchangeAuthorizationRequest ¶
type ExchangeAuthorizationRequest struct { Code string `json:"code"` ClientID string `json:"client_id"` ClientSecret string `json:"client_secret"` RedirectURI string `json:"redirect_uri,omitempty"` State string `json:"state,omitempty"` GrantType GrantType `json:"grant_type,omitempty"` }
ExchangeAuthorizationRequest represents a request to exchange an authorization code for an access token. RedirectURI is optional, all the other fields are mandatory.
type ExtendedAttribute ¶ added in v1.3.0
type ExtendedAttribute struct { Name string `json:"name"` Description string `json:"description"` Required bool `json:"required"` Options []ExtendedAttributeOption `json:"options"` }
type ExtendedAttributeOption ¶ added in v1.3.0
type GrantType ¶
type GrantType string
GrantType is a string that identifies a particular grant type in the exchange request.
type IdentityService ¶
type IdentityService struct {
// contains filtered or unexported fields
}
IdentityService handles communication with several authentication identity methods of the DNSimple API.
See https://developer.dnsimple.com/v2/identity/
func (*IdentityService) Whoami ¶
func (s *IdentityService) Whoami(ctx context.Context) (*WhoamiResponse, error)
Whoami gets the current authenticate context.
type LetsencryptCertificateAttributes ¶ added in v0.16.0
type LetsencryptCertificateAttributes struct { // Deprecated: ContactID is deprecated and its value is ignored and will be removed in the next major version. ContactID int64 `json:"contact_id,omitempty"` Name string `json:"name,omitempty"` AutoRenew bool `json:"auto_renew,omitempty"` AlternateNames []string `json:"alternate_names,omitempty"` SignatureAlgorithm string `json:"signature_algorithm,omitempty"` }
LetsencryptCertificateAttributes is a set of attributes to purchase a Let's Encrypt certificate.
type ListOptions ¶
type ListOptions struct { // The page to return Page *int `url:"page,omitempty"` // The number of entries to return per page PerPage *int `url:"per_page,omitempty"` // The order criteria to sort the results. // The value is a comma-separated list of field[:direction], // eg. name | name:desc | name:desc,expiration:desc Sort *string `url:"sort,omitempty"` }
ListOptions contains the common options you can pass to a List method in order to control parameters such as pagination and page number.
type OauthService ¶
type OauthService struct {
// contains filtered or unexported fields
}
OauthService handles communication with the authorization related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/oauth/
func (*OauthService) AuthorizeURL ¶
func (s *OauthService) AuthorizeURL(clientID string, options *AuthorizationOptions) string
AuthorizeURL generates the URL to authorize an user for an application via the OAuth2 flow.
func (*OauthService) ExchangeAuthorizationForToken ¶
func (s *OauthService) ExchangeAuthorizationForToken(authorization *ExchangeAuthorizationRequest) (*AccessToken, error)
ExchangeAuthorizationForToken exchanges the short-lived authorization code for an access token you can use to authenticate your API calls.
type Pagination ¶
type Pagination struct { CurrentPage int `json:"current_page"` PerPage int `json:"per_page"` TotalPages int `json:"total_pages"` TotalEntries int `json:"total_entries"` }
Pagination represents the pagination information, if the response is paginated.
type RegisterDomainInput ¶ added in v0.50.0
type RegisterDomainInput struct { // The ID of the Contact to use as registrant for the domain RegistrantID int `json:"registrant_id"` // Set to true to enable the whois privacy service. An extra cost may apply. // Default to false. EnableWhoisPrivacy bool `json:"whois_privacy,omitempty"` // Set to true to enable the auto-renewal of the domain. // Default to true. EnableAutoRenewal bool `json:"auto_renew,omitempty"` // Required by some TLDs. Use Tlds.GetTldExtendedAttributes() to get the required entries. ExtendedAttributes map[string]string `json:"extended_attributes,omitempty"` // Required as confirmation of the price, only if the domain is premium. PremiumPrice string `json:"premium_price,omitempty"` }
RegisterDomainInput represents the attributes you can pass to a register API request. Some attributes are mandatory.
type RegistrantChange ¶ added in v1.3.0
type RegistrantChange struct { Id int `json:"id"` AccountId int `json:"account_id"` ContactId int `json:"contact_id"` DomainId int `json:"domain_id"` // One of: "new", "pending", "cancelling", "cancelled", "completed". State string `json:"state"` ExtendedAttributes map[string]string `json:"extended_attributes"` RegistryOwnerChange bool `json:"registry_owner_change"` IrtLockLiftedBy string `json:"irt_lock_lifted_by"` CreatedAt string `json:"created_at"` UpdatedAt string `json:"updated_at"` }
type RegistrantChangeCheck ¶ added in v1.3.0
type RegistrantChangeCheck struct { DomainId int `json:"domain_id"` ContactId int `json:"contact_id"` ExtendedAttributes []ExtendedAttribute `json:"extended_attributes"` RegistryOwnerChange bool `json:"registry_owner_change"` }
type RegistrantChangeCheckResponse ¶ added in v1.3.0
type RegistrantChangeCheckResponse struct { Response Data *RegistrantChangeCheck `json:"data"` }
type RegistrantChangeDeleteResponse ¶ added in v1.3.0
type RegistrantChangeDeleteResponse struct {
Response
}
type RegistrantChangeListOptions ¶ added in v1.3.0
type RegistrantChangeListOptions struct { // Only include results with a state field exactly matching the given string State *string `url:"state,omitempty"` // Only include results with a domain_id field exactly matching the given string DomainId *string `url:"domain_id,omitempty"` // Only include results with a contact_id field exactly matching the given string ContactId *string `url:"contact_id,omitempty"` ListOptions }
type RegistrantChangeResponse ¶ added in v1.3.0
type RegistrantChangeResponse struct { Response Data *RegistrantChange `json:"data"` }
type RegistrantChangesListResponse ¶ added in v1.3.0
type RegistrantChangesListResponse struct { Response Data []RegistrantChange `json:"data"` }
type RegistrarService ¶
type RegistrarService struct {
// contains filtered or unexported fields
}
RegistrarService handles communication with the registrar related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/registrar/
func (*RegistrarService) CancelDomainTransfer ¶ added in v0.62.0
func (s *RegistrarService) CancelDomainTransfer(ctx context.Context, accountID string, domainName string, domainTransferID int64) (*DomainTransferResponse, error)
CancelDomainTransfer cancels an in progress domain transfer.
See https://developer.dnsimple.com/v2/registrar/#cancelDomainTransfer
func (*RegistrarService) ChangeDomainDelegation ¶
func (s *RegistrarService) ChangeDomainDelegation(ctx context.Context, accountID string, domainName string, newDelegation *Delegation) (*DelegationResponse, error)
ChangeDomainDelegation updates the delegated name severs for the domain.
See https://developer.dnsimple.com/v2/registrar/delegation/#get
func (*RegistrarService) ChangeDomainDelegationFromVanity ¶ added in v0.13.0
func (s *RegistrarService) ChangeDomainDelegationFromVanity(ctx context.Context, accountID string, domainName string) (*VanityDelegationResponse, error)
ChangeDomainDelegationFromVanity disables vanity name servers for the given domain.
See https://developer.dnsimple.com/v2/registrar/delegation/#dedelegateFromVanity
func (*RegistrarService) ChangeDomainDelegationToVanity ¶ added in v0.13.0
func (s *RegistrarService) ChangeDomainDelegationToVanity(ctx context.Context, accountID string, domainName string, newDelegation *Delegation) (*VanityDelegationResponse, error)
ChangeDomainDelegationToVanity enables vanity name servers for the given domain.
See https://developer.dnsimple.com/v2/registrar/delegation/#delegateToVanity
func (*RegistrarService) CheckDomain ¶
func (s *RegistrarService) CheckDomain(ctx context.Context, accountID string, domainName string) (*DomainCheckResponse, error)
CheckDomain checks a domain name.
func (*RegistrarService) CheckRegistrantChange ¶ added in v1.3.0
func (s *RegistrarService) CheckRegistrantChange(ctx context.Context, accountID string, input *CheckRegistrantChangeInput) (*RegistrantChangeCheckResponse, error)
CheckRegistrantChange retrieves the requirements of a registrant change.
See https://developer.dnsimple.com/v2/registrar/#checkRegistrantChange
func (*RegistrarService) CreateRegistrantChange ¶ added in v1.3.0
func (s *RegistrarService) CreateRegistrantChange(ctx context.Context, accountID string, input *CreateRegistrantChangeInput) (*RegistrantChangeResponse, error)
CreateRegistrantChange starts a registrant change.
See https://developer.dnsimple.com/v2/registrar/#createRegistrantChange
func (*RegistrarService) DeleteRegistrantChange ¶ added in v1.3.0
func (s *RegistrarService) DeleteRegistrantChange(ctx context.Context, accountID string, registrantChange int) (*RegistrantChangeDeleteResponse, error)
DeleteRegistrantChange cancels an ongoing registrant change from the account.
See https://developer.dnsimple.com/v2/registrar/#deleteRegistrantChange
func (*RegistrarService) DisableDomainAutoRenewal ¶
func (s *RegistrarService) DisableDomainAutoRenewal(ctx context.Context, accountID string, domainName string) (*DomainResponse, error)
DisableDomainAutoRenewal disables auto-renewal for the domain.
See https://developer.dnsimple.com/v2/registrar/auto-renewal/#enable
func (*RegistrarService) DisableDomainTransferLock ¶ added in v1.4.0
func (s *RegistrarService) DisableDomainTransferLock(ctx context.Context, accountID string, domainIdentifier string) (*DomainTransferLockResponse, error)
DisableDomainTransferLock gets the domain transfer lock for a domain.
See https://developer.dnsimple.com/v2/registrar/#disableDomainTransferLock
func (*RegistrarService) DisableWhoisPrivacy ¶
func (s *RegistrarService) DisableWhoisPrivacy(ctx context.Context, accountID string, domainName string) (*WhoisPrivacyResponse, error)
DisableWhoisPrivacy disables the whois privacy for the domain.
See https://developer.dnsimple.com/v2/registrar/whois-privacy/#enable
func (*RegistrarService) EnableDomainAutoRenewal ¶
func (s *RegistrarService) EnableDomainAutoRenewal(ctx context.Context, accountID string, domainName string) (*DomainResponse, error)
EnableDomainAutoRenewal enables auto-renewal for the domain.
See https://developer.dnsimple.com/v2/registrar/auto-renewal/#enable
func (*RegistrarService) EnableDomainTransferLock ¶ added in v1.4.0
func (s *RegistrarService) EnableDomainTransferLock(ctx context.Context, accountID string, domainIdentifier string) (*DomainTransferLockResponse, error)
EnableDomainTransferLock gets the domain transfer lock for a domain.
See https://developer.dnsimple.com/v2/registrar/#enableDomainTransferLock
func (*RegistrarService) EnableWhoisPrivacy ¶
func (s *RegistrarService) EnableWhoisPrivacy(ctx context.Context, accountID string, domainName string) (*WhoisPrivacyResponse, error)
EnableWhoisPrivacy enables the whois privacy for the domain.
See https://developer.dnsimple.com/v2/registrar/whois-privacy/#enable
func (*RegistrarService) GetDomainDelegation ¶
func (s *RegistrarService) GetDomainDelegation(ctx context.Context, accountID string, domainName string) (*DelegationResponse, error)
GetDomainDelegation gets the current delegated name servers for the domain.
See https://developer.dnsimple.com/v2/registrar/delegation/#get
func (*RegistrarService) GetDomainPremiumPrice
deprecated
added in
v0.14.0
func (s *RegistrarService) GetDomainPremiumPrice(ctx context.Context, accountID string, domainName string, options *DomainPremiumPriceOptions) (*DomainPremiumPriceResponse, error)
GetDomainPremiumPrice gets the premium price for a domain.
Deprecated: GetDomainPremiumPrice has been deprecated, use GetDomainPrices instead.
You must specify an action to get the price for. Valid actions are: - registration - transfer - renewal
See https://developer.dnsimple.com/v2/registrar/#premium-price
func (*RegistrarService) GetDomainPrices ¶ added in v0.70.0
func (s *RegistrarService) GetDomainPrices(ctx context.Context, accountID string, domainName string) (*DomainPriceResponse, error)
GetDomainPrices get prices for a domain.
See https://developer.dnsimple.com/v2/registrar/#getDomainPrices
func (*RegistrarService) GetDomainRegistration ¶ added in v1.2.0
func (s *RegistrarService) GetDomainRegistration(ctx context.Context, accountID string, domainName string, domainRegistrationID string) (*DomainRegistrationResponse, error)
GetDomainRegistration gets the details of an existing domain registration.
See https://developer.dnsimple.com/v2/registrar/#getDomainRegistration
func (*RegistrarService) GetDomainRenewal ¶ added in v1.2.0
func (s *RegistrarService) GetDomainRenewal(ctx context.Context, accountID string, domainName string, domainRenewalID string) (*DomainRenewalResponse, error)
GetDomainRenewal gets the details of an existing domain renewal.
See https://developer.dnsimple.com/v2/registrar/#getDomainRenewal
func (*RegistrarService) GetDomainTransfer ¶ added in v0.62.0
func (s *RegistrarService) GetDomainTransfer(ctx context.Context, accountID string, domainName string, domainTransferID int64) (*DomainTransferResponse, error)
GetDomainTransfer fetches a domain transfer.
See https://developer.dnsimple.com/v2/registrar/#getDomainTransfer
func (*RegistrarService) GetDomainTransferLock ¶ added in v1.4.0
func (s *RegistrarService) GetDomainTransferLock(ctx context.Context, accountID string, domainIdentifier string) (*DomainTransferLockResponse, error)
GetDomainTransferLock gets the domain transfer lock for a domain.
See https://developer.dnsimple.com/v2/registrar/#getDomainTransferLock
func (*RegistrarService) GetRegistrantChange ¶ added in v1.3.0
func (s *RegistrarService) GetRegistrantChange(ctx context.Context, accountID string, registrantChange int) (*RegistrantChangeResponse, error)
GetRegistrantChange retrieves the details of an existing registrant change.
See https://developer.dnsimple.com/v2/registrar/#getRegistrantChange
func (*RegistrarService) GetWhoisPrivacy ¶
func (s *RegistrarService) GetWhoisPrivacy(ctx context.Context, accountID string, domainName string) (*WhoisPrivacyResponse, error)
GetWhoisPrivacy gets the whois privacy for the domain.
See https://developer.dnsimple.com/v2/registrar/whois-privacy/#get
func (*RegistrarService) ListRegistrantChange ¶ added in v1.3.0
func (s *RegistrarService) ListRegistrantChange(ctx context.Context, accountID string, options *RegistrantChangeListOptions) (*RegistrantChangesListResponse, error)
ListRegistrantChange lists registrant changes in the account.
See https://developer.dnsimple.com/v2/registrar/#listRegistrantChanges
func (*RegistrarService) RegisterDomain ¶
func (s *RegistrarService) RegisterDomain(ctx context.Context, accountID string, domainName string, input *RegisterDomainInput) (*DomainRegistrationResponse, error)
RegisterDomain registers a domain name.
See https://developer.dnsimple.com/v2/registrar/#registerDomain
func (*RegistrarService) RenewDomain ¶
func (s *RegistrarService) RenewDomain(ctx context.Context, accountID string, domainName string, input *RenewDomainInput) (*DomainRenewalResponse, error)
RenewDomain renews a domain name.
See https://developer.dnsimple.com/v2/registrar/#renewDomain
func (*RegistrarService) RenewWhoisPrivacy ¶ added in v0.23.0
func (s *RegistrarService) RenewWhoisPrivacy(ctx context.Context, accountID string, domainName string) (*WhoisPrivacyRenewalResponse, error)
RenewWhoisPrivacy renews the whois privacy for the domain.
See https://developer.dnsimple.com/v2/registrar/whois-privacy/#renew
func (*RegistrarService) TransferDomain ¶
func (s *RegistrarService) TransferDomain(ctx context.Context, accountID string, domainName string, input *TransferDomainInput) (*DomainTransferResponse, error)
TransferDomain transfers a domain name.
See https://developer.dnsimple.com/v2/registrar/#transferDomain
func (*RegistrarService) TransferDomainOut ¶
func (s *RegistrarService) TransferDomainOut(ctx context.Context, accountID string, domainName string) (*DomainTransferOutResponse, error)
TransferDomainOut prepares a domain for outbound transfer.
See https://developer.dnsimple.com/v2/registrar/#authorizeDomainTransferOut
type RenewDomainInput ¶ added in v0.50.0
type RenewDomainInput struct { // The number of years Period int `json:"period"` // Required as confirmation of the price, only if the domain is premium. PremiumPrice string `json:"premium_price,omitempty"` }
RenewDomainInput represents the attributes you can pass to a renew API request. Some attributes are mandatory.
type Response ¶
type Response struct { // HTTP response HTTPResponse *http.Response // If the response is paginated, the Pagination will store them. Pagination *Pagination `json:"pagination"` }
A Response represents an API response.
func (*Response) RateLimit ¶
RateLimit returns the maximum amount of requests this account can send in an hour.
func (*Response) RateLimitRemaining ¶
RateLimitRemaining returns the remaining amount of requests this account can send within this hour window.
func (*Response) RateLimitReset ¶
RateLimitReset returns when the throttling window will be reset for this account.
type Service ¶ added in v0.13.0
type Service struct { ID int64 `json:"id,omitempty"` SID string `json:"sid,omitempty"` Name string `json:"name,omitempty"` Description string `json:"description,omitempty"` SetupDescription string `json:"setup_description,omitempty"` RequiresSetup bool `json:"requires_setup,omitempty"` DefaultSubdomain string `json:"default_subdomain,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` Settings []ServiceSetting `json:"settings,omitempty"` }
Service represents a Service in DNSimple.
type ServiceResponse ¶ added in v0.13.0
ServiceResponse represents a response from an API method that returns a Service struct.
type ServiceSetting ¶ added in v0.13.0
type ServiceSetting struct { Name string `json:"name,omitempty"` Label string `json:"label,omitempty"` Append string `json:"append,omitempty"` Description string `json:"description,omitempty"` Example string `json:"example,omitempty"` Password bool `json:"password,omitempty"` }
ServiceSetting represents a single group of settings for a DNSimple Service.
type ServicesResponse ¶ added in v0.13.0
ServicesResponse represents a response from an API method that returns a collection of Service struct.
type ServicesService ¶ added in v0.13.0
type ServicesService struct {
// contains filtered or unexported fields
}
ServicesService handles communication with the service related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/services/
func (*ServicesService) AppliedServices ¶ added in v0.13.0
func (s *ServicesService) AppliedServices(ctx context.Context, accountID string, domainIdentifier string, options *ListOptions) (*ServicesResponse, error)
AppliedServices lists the applied one-click services for a domain.
See https://developer.dnsimple.com/v2/services/domains/#applied
func (*ServicesService) ApplyService ¶ added in v0.13.0
func (s *ServicesService) ApplyService(ctx context.Context, accountID string, serviceIdentifier string, domainIdentifier string, settings DomainServiceSettings) (*ServiceResponse, error)
ApplyService applies a one-click services to a domain.
See https://developer.dnsimple.com/v2/services/domains/#apply
func (*ServicesService) GetService ¶ added in v0.13.0
func (s *ServicesService) GetService(ctx context.Context, serviceIdentifier string) (*ServiceResponse, error)
GetService fetches a one-click service.
func (*ServicesService) ListServices ¶ added in v0.13.0
func (s *ServicesService) ListServices(ctx context.Context, options *ListOptions) (*ServicesResponse, error)
ListServices lists the one-click services available in DNSimple.
func (*ServicesService) UnapplyService ¶ added in v0.13.0
func (s *ServicesService) UnapplyService(ctx context.Context, accountID string, serviceIdentifier string, domainIdentifier string) (*ServiceResponse, error)
UnapplyService unapplies a one-click services from a domain.
See https://developer.dnsimple.com/v2/services/domains/#unapply
type Template ¶
type Template struct { ID int64 `json:"id,omitempty"` SID string `json:"sid,omitempty"` AccountID int64 `json:"account_id,omitempty"` Name string `json:"name,omitempty"` Description string `json:"description,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
Template represents a Template in DNSimple.
type TemplateRecord ¶ added in v0.13.0
type TemplateRecord struct { ID int64 `json:"id,omitempty"` TemplateID int64 `json:"template_id,omitempty"` Name string `json:"name"` Content string `json:"content,omitempty"` TTL int `json:"ttl,omitempty"` Type string `json:"type,omitempty"` Priority int `json:"priority,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
TemplateRecord represents a DNS record for a template in DNSimple.
type TemplateRecordResponse ¶ added in v0.13.0
type TemplateRecordResponse struct { Response Data *TemplateRecord `json:"data"` }
TemplateRecordResponse represents a response from an API method that returns a TemplateRecord struct.
type TemplateRecordsResponse ¶ added in v0.13.0
type TemplateRecordsResponse struct { Response Data []TemplateRecord `json:"data"` }
TemplateRecordsResponse represents a response from an API method that returns a collection of TemplateRecord struct.
type TemplateResponse ¶
TemplateResponse represents a response from an API method that returns a Template struct.
type TemplatesResponse ¶
TemplatesResponse represents a response from an API method that returns a collection of Template struct.
type TemplatesService ¶
type TemplatesService struct {
// contains filtered or unexported fields
}
TemplatesService handles communication with the template related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/templates/
func (*TemplatesService) ApplyTemplate ¶ added in v0.13.0
func (s *TemplatesService) ApplyTemplate(ctx context.Context, accountID string, templateIdentifier string, domainIdentifier string) (*TemplateResponse, error)
ApplyTemplate applies a template to the given domain.
See https://developer.dnsimple.com/v2/templates/domains/#applyTemplateToDomain
func (*TemplatesService) CreateTemplate ¶
func (s *TemplatesService) CreateTemplate(ctx context.Context, accountID string, templateAttributes Template) (*TemplateResponse, error)
CreateTemplate creates a new template.
func (*TemplatesService) CreateTemplateRecord ¶ added in v0.13.0
func (s *TemplatesService) CreateTemplateRecord(ctx context.Context, accountID string, templateIdentifier string, templateRecordAttributes TemplateRecord) (*TemplateRecordResponse, error)
CreateTemplateRecord creates a new template record.
See https://developer.dnsimple.com/v2/templates/records/#create
func (*TemplatesService) DeleteTemplate ¶ added in v0.13.0
func (s *TemplatesService) DeleteTemplate(ctx context.Context, accountID string, templateIdentifier string) (*TemplateResponse, error)
DeleteTemplate deletes a template.
func (*TemplatesService) DeleteTemplateRecord ¶ added in v0.13.0
func (s *TemplatesService) DeleteTemplateRecord(ctx context.Context, accountID string, templateIdentifier string, templateRecordID int64) (*TemplateRecordResponse, error)
DeleteTemplateRecord deletes a template record.
See https://developer.dnsimple.com/v2/templates/records/#delete
func (*TemplatesService) GetTemplate ¶
func (s *TemplatesService) GetTemplate(ctx context.Context, accountID string, templateIdentifier string) (*TemplateResponse, error)
GetTemplate fetches a template.
func (*TemplatesService) GetTemplateRecord ¶ added in v0.13.0
func (s *TemplatesService) GetTemplateRecord(ctx context.Context, accountID string, templateIdentifier string, templateRecordID int64) (*TemplateRecordResponse, error)
GetTemplateRecord fetches a template record.
See https://developer.dnsimple.com/v2/templates/records/#get
func (*TemplatesService) ListTemplateRecords ¶ added in v0.13.0
func (s *TemplatesService) ListTemplateRecords(ctx context.Context, accountID string, templateIdentifier string, options *ListOptions) (*TemplateRecordsResponse, error)
ListTemplateRecords list the templates for an account.
See https://developer.dnsimple.com/v2/templates/records/#list
func (*TemplatesService) ListTemplates ¶
func (s *TemplatesService) ListTemplates(ctx context.Context, accountID string, options *ListOptions) (*TemplatesResponse, error)
ListTemplates list the templates for an account.
func (*TemplatesService) UpdateTemplate ¶ added in v0.13.0
func (s *TemplatesService) UpdateTemplate(ctx context.Context, accountID string, templateIdentifier string, templateAttributes Template) (*TemplateResponse, error)
UpdateTemplate updates a template.
type Tld ¶
type Tld struct { Tld string `json:"tld"` TldType int `json:"tld_type"` WhoisPrivacy bool `json:"whois_privacy"` AutoRenewOnly bool `json:"auto_renew_only"` MinimumRegistration int `json:"minimum_registration"` RegistrationEnabled bool `json:"registration_enabled"` RenewalEnabled bool `json:"renewal_enabled"` TransferEnabled bool `json:"transfer_enabled"` DnssecInterfaceType string `json:"dnssec_interface_type"` }
Tld represents a TLD in DNSimple.
type TldExtendedAttribute ¶
type TldExtendedAttribute struct { Name string `json:"name"` Description string `json:"description"` Required bool `json:"required"` Options []TldExtendedAttributeOption `json:"options"` }
TldExtendedAttribute represents an extended attributes supported or required by a specific TLD.
type TldExtendedAttributeOption ¶
type TldExtendedAttributeOption struct { Title string `json:"title"` Value string `json:"value"` Description string `json:"description"` }
TldExtendedAttributeOption represents a single option you can assign to an extended attributes.
type TldExtendedAttributesResponse ¶
type TldExtendedAttributesResponse struct { Response Data []TldExtendedAttribute `json:"data"` }
TldExtendedAttributesResponse represents a response from an API method that returns a collection of Tld extended attributes.
type TldResponse ¶
TldResponse represents a response from an API method that returns a Tld struct.
type TldsResponse ¶
TldsResponse represents a response from an API method that returns a collection of Tld struct.
type TldsService ¶
type TldsService struct {
// contains filtered or unexported fields
}
TldsService handles communication with the Tld related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/tlds/
func (*TldsService) GetTld ¶
func (s *TldsService) GetTld(ctx context.Context, tld string) (*TldResponse, error)
GetTld fetches a TLD.
func (*TldsService) GetTldExtendedAttributes ¶
func (s *TldsService) GetTldExtendedAttributes(ctx context.Context, tld string) (*TldExtendedAttributesResponse, error)
GetTldExtendedAttributes fetches the extended attributes of a TLD.
func (*TldsService) ListTlds ¶
func (s *TldsService) ListTlds(ctx context.Context, options *ListOptions) (*TldsResponse, error)
ListTlds lists the supported TLDs.
type TransferDomainInput ¶ added in v0.50.0
type TransferDomainInput struct { // The ID of the Contact to use as registrant for the domain RegistrantID int `json:"registrant_id"` // The Auth-Code required to transfer the domain. // This is provided by the current registrar of the domain. AuthCode string `json:"auth_code,omitempty"` // Set to true to enable the whois privacy service. An extra cost may apply. // Default to false. EnableWhoisPrivacy bool `json:"whois_privacy,omitempty"` // Set to true to enable the auto-renewal of the domain. // Default to true. EnableAutoRenewal bool `json:"auto_renew,omitempty"` // Required by some TLDs. Use Tlds.GetTldExtendedAttributes() to get the required entries. ExtendedAttributes map[string]string `json:"extended_attributes,omitempty"` // Required as confirmation of the price, only if the domain is premium. PremiumPrice string `json:"premium_price,omitempty"` }
TransferDomainInput represents the attributes you can pass to a transfer API request. Some attributes are mandatory.
type VanityDelegationResponse ¶ added in v0.13.0
type VanityDelegationResponse struct { Response Data []VanityNameServer `json:"data"` }
VanityDelegationResponse represents a response for vanity name server enable and disable operations.
type VanityNameServer ¶ added in v0.13.0
type VanityNameServer struct { ID int64 `json:"id,omitempty"` Name string `json:"name,omitempty"` IPv4 string `json:"ipv4,omitempty"` IPv6 string `json:"ipv6,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
VanityNameServer represents data for a single vanity name server.
type VanityNameServerResponse ¶ added in v0.13.0
type VanityNameServerResponse struct { Response Data []VanityNameServer `json:"data"` }
VanityNameServerResponse represents a response for vanity name server enable and disable operations.
type VanityNameServersService ¶ added in v0.13.0
type VanityNameServersService struct {
// contains filtered or unexported fields
}
VanityNameServersService handles communication with Vanity Name Servers methods of the DNSimple API.
See https://developer.dnsimple.com/v2/vanity/
func (*VanityNameServersService) DisableVanityNameServers ¶ added in v0.13.0
func (s *VanityNameServersService) DisableVanityNameServers(ctx context.Context, accountID string, domainIdentifier string) (*VanityNameServerResponse, error)
DisableVanityNameServers Vanity Name Servers for the given domain
See https://developer.dnsimple.com/v2/vanity/#disableVanityNameServers
func (*VanityNameServersService) EnableVanityNameServers ¶ added in v0.13.0
func (s *VanityNameServersService) EnableVanityNameServers(ctx context.Context, accountID string, domainIdentifier string) (*VanityNameServerResponse, error)
EnableVanityNameServers Vanity Name Servers for the given domain
See https://developer.dnsimple.com/v2/vanity/#enableVanityNameServers
type WebhookResponse ¶
WebhookResponse represents a response from an API method that returns a Webhook struct.
type WebhooksResponse ¶
WebhooksResponse represents a response from an API method that returns a collection of Webhook struct.
type WebhooksService ¶
type WebhooksService struct {
// contains filtered or unexported fields
}
WebhooksService handles communication with the webhook related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/webhooks
func (*WebhooksService) CreateWebhook ¶
func (s *WebhooksService) CreateWebhook(ctx context.Context, accountID string, webhookAttributes Webhook) (*WebhookResponse, error)
CreateWebhook creates a new webhook.
See https://developer.dnsimple.com/v2/webhooks/#createWebhook
func (*WebhooksService) DeleteWebhook ¶
func (s *WebhooksService) DeleteWebhook(ctx context.Context, accountID string, webhookID int64) (*WebhookResponse, error)
DeleteWebhook PERMANENTLY deletes the webhook.
See https://developer.dnsimple.com/v2/webhooks/#deleteWebhook
func (*WebhooksService) GetWebhook ¶
func (s *WebhooksService) GetWebhook(ctx context.Context, accountID string, webhookID int64) (*WebhookResponse, error)
GetWebhook fetches a webhook.
func (*WebhooksService) ListWebhooks ¶
func (s *WebhooksService) ListWebhooks(ctx context.Context, accountID string, _ *ListOptions) (*WebhooksResponse, error)
ListWebhooks lists the webhooks for an account.
See https://developer.dnsimple.com/v2/webhooks/#listWebhooks
type WhoamiData ¶
type WhoamiData struct { User *User `json:"user,omitempty"` Account *Account `json:"account,omitempty"` }
WhoamiData represents an authenticated context that contains information about the current logged User and/or Account.
type WhoamiResponse ¶
type WhoamiResponse struct { Response Data *WhoamiData `json:"data"` }
WhoamiResponse represents a response from an API method that returns a Whoami struct.
type WhoisPrivacy ¶
type WhoisPrivacy struct { ID int64 `json:"id,omitempty"` DomainID int64 `json:"domain_id,omitempty"` Enabled bool `json:"enabled,omitempty"` ExpiresOn string `json:"expires_on,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
WhoisPrivacy represents a whois privacy in DNSimple.
type WhoisPrivacyRenewal ¶ added in v0.23.0
type WhoisPrivacyRenewal struct { ID int64 `json:"id,omitempty"` DomainID int64 `json:"domain_id,omitempty"` WhoisPrivacyID int64 `json:"whois_privacy_id,omitempty"` State string `json:"string,omitempty"` Enabled bool `json:"enabled,omitempty"` ExpiresOn string `json:"expires_on,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
WhoisPrivacyRenewal represents a whois privacy renewal in DNSimple.
type WhoisPrivacyRenewalResponse ¶ added in v0.50.0
type WhoisPrivacyRenewalResponse struct { Response Data *WhoisPrivacyRenewal `json:"data"` }
WhoisPrivacyRenewalResponse represents a response from an API method that returns a WhoisPrivacyRenewal struct.
type WhoisPrivacyResponse ¶
type WhoisPrivacyResponse struct { Response Data *WhoisPrivacy `json:"data"` }
WhoisPrivacyResponse represents a response from an API method that returns a WhoisPrivacy struct.
type Zone ¶
type Zone struct { ID int64 `json:"id,omitempty"` AccountID int64 `json:"account_id,omitempty"` Name string `json:"name,omitempty"` Reverse bool `json:"reverse,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
Zone represents a Zone in DNSimple.
type ZoneDistribution ¶ added in v0.21.0
type ZoneDistribution struct {
Distributed bool `json:"distributed"`
}
ZoneDistribution is the result of the zone distribution check.
type ZoneDistributionResponse ¶ added in v0.50.0
type ZoneDistributionResponse struct { Response Data *ZoneDistribution `json:"data"` }
ZoneDistributionResponse represents a response from an API method that returns a ZoneDistribution struct.
type ZoneFile ¶ added in v0.13.0
type ZoneFile struct {
Zone string `json:"zone,omitempty"`
}
ZoneFile represents a Zone File in DNSimple.
type ZoneFileResponse ¶ added in v0.13.0
ZoneFileResponse represents a response from an API method that returns a ZoneFile struct.
type ZoneListOptions ¶
type ZoneListOptions struct { // Select domains where the name contains given string. NameLike *string `url:"name_like,omitempty"` ListOptions }
ZoneListOptions specifies the optional parameters you can provide to customize the ZonesService.ListZones method.
type ZoneRecord ¶
type ZoneRecord struct { ID int64 `json:"id,omitempty"` ZoneID string `json:"zone_id,omitempty"` ParentID int64 `json:"parent_id,omitempty"` Type string `json:"type,omitempty"` Name string `json:"name"` Content string `json:"content,omitempty"` TTL int `json:"ttl,omitempty"` Priority int `json:"priority,omitempty"` SystemRecord bool `json:"system_record,omitempty"` Regions []string `json:"regions,omitempty"` CreatedAt string `json:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty"` }
ZoneRecord represents a zone record in DNSimple.
type ZoneRecordAttributes ¶ added in v0.60.0
type ZoneRecordAttributes struct { ZoneID string `json:"zone_id,omitempty"` Type string `json:"type,omitempty"` Name *string `json:"name,omitempty"` Content string `json:"content,omitempty"` TTL int `json:"ttl,omitempty"` Priority int `json:"priority,omitempty"` Regions []string `json:"regions,omitempty"` }
ZoneRecordAttributes represents the attributes you can send to create/update a zone record.
Compared to most other calls in this library, you should not use ZoneRecord as payload for record calls. This is because it can lead to side effects due to the inability of go to distinguish between a non-present string and an empty string. Name can be both, therefore a specific struct is required.
type ZoneRecordListOptions ¶
type ZoneRecordListOptions struct { // Select records where the name matches given string. Name *string `url:"name,omitempty"` // Select records where the name contains given string. NameLike *string `url:"name_like,omitempty"` // Select records of given type. // Eg. TXT, A, NS. Type *string `url:"type,omitempty"` ListOptions }
ZoneRecordListOptions specifies the optional parameters you can provide to customize the ZonesService.ListZoneRecords method.
type ZoneRecordResponse ¶
type ZoneRecordResponse struct { Response Data *ZoneRecord `json:"data"` }
ZoneRecordResponse represents a response from an API method that returns a ZoneRecord struct.
type ZoneRecordsResponse ¶
type ZoneRecordsResponse struct { Response Data []ZoneRecord `json:"data"` }
ZoneRecordsResponse represents a response from an API method that returns a collection of ZoneRecord struct.
type ZoneResponse ¶
ZoneResponse represents a response from an API method that returns a Zone struct.
type ZonesResponse ¶
ZonesResponse represents a response from an API method that returns a collection of Zone struct.
type ZonesService ¶
type ZonesService struct {
// contains filtered or unexported fields
}
ZonesService handles communication with the zone related methods of the DNSimple API.
See https://developer.dnsimple.com/v2/zones/
func (*ZonesService) ActivateZoneDns ¶ added in v1.2.1
func (s *ZonesService) ActivateZoneDns(ctx context.Context, accountID string, zoneName string) (*ZoneResponse, error)
ActivateZoneDns activates DNS services for a zone.
See https://developer.dnsimple.com/v2/zones/#activateZoneService
func (*ZonesService) CheckZoneDistribution ¶ added in v0.21.0
func (s *ZonesService) CheckZoneDistribution(ctx context.Context, accountID string, zoneName string) (*ZoneDistributionResponse, error)
CheckZoneDistribution checks if a zone is fully distributed across DNSimple nodes.
See https://developer.dnsimple.com/v2/zones/#checkZoneDistribution
func (*ZonesService) CheckZoneRecordDistribution ¶ added in v0.21.0
func (s *ZonesService) CheckZoneRecordDistribution(ctx context.Context, accountID string, zoneName string, recordID int64) (*ZoneDistributionResponse, error)
CheckZoneRecordDistribution checks if a zone is fully distributed across DNSimple nodes.
See https://developer.dnsimple.com/v2/zones/#checkZoneRecordDistribution
func (*ZonesService) CreateRecord ¶
func (s *ZonesService) CreateRecord(ctx context.Context, accountID string, zoneName string, recordAttributes ZoneRecordAttributes) (*ZoneRecordResponse, error)
CreateRecord creates a zone record.
See https://developer.dnsimple.com/v2/zones/records/#createZoneRecord
func (*ZonesService) DeactivateZoneDns ¶ added in v1.2.1
func (s *ZonesService) DeactivateZoneDns(ctx context.Context, accountID string, zoneName string) (*ZoneResponse, error)
DeactivateZoneDns deactivates DNS services for a zone.
See https://developer.dnsimple.com/v2/zones/#deactivateZoneService
func (*ZonesService) DeleteRecord ¶
func (s *ZonesService) DeleteRecord(ctx context.Context, accountID string, zoneName string, recordID int64) (*ZoneRecordResponse, error)
DeleteRecord PERMANENTLY deletes a zone record from the zone.
See https://developer.dnsimple.com/v2/zones/records/#deleteZoneRecord
func (*ZonesService) GetRecord ¶
func (s *ZonesService) GetRecord(ctx context.Context, accountID string, zoneName string, recordID int64) (*ZoneRecordResponse, error)
GetRecord fetches a zone record.
See https://developer.dnsimple.com/v2/zones/records/#getZoneRecord
func (*ZonesService) GetZone ¶
func (s *ZonesService) GetZone(ctx context.Context, accountID string, zoneName string) (*ZoneResponse, error)
GetZone fetches a zone.
func (*ZonesService) GetZoneFile ¶ added in v0.13.0
func (s *ZonesService) GetZoneFile(ctx context.Context, accountID string, zoneName string) (*ZoneFileResponse, error)
GetZoneFile fetches a zone file.
func (*ZonesService) ListRecords ¶
func (s *ZonesService) ListRecords(ctx context.Context, accountID string, zoneName string, options *ZoneRecordListOptions) (*ZoneRecordsResponse, error)
ListRecords lists the zone records for a zone.
See https://developer.dnsimple.com/v2/zones/records/#listZoneRecords
func (*ZonesService) ListZones ¶
func (s *ZonesService) ListZones(ctx context.Context, accountID string, options *ZoneListOptions) (*ZonesResponse, error)
ListZones the zones for an account.
func (*ZonesService) UpdateRecord ¶
func (s *ZonesService) UpdateRecord(ctx context.Context, accountID string, zoneName string, recordID int64, recordAttributes ZoneRecordAttributes) (*ZoneRecordResponse, error)
UpdateRecord updates a zone record.
See https://developer.dnsimple.com/v2/zones/records/#updateZoneRecord
Source Files
¶
- accounts.go
- authentication.go
- certificates.go
- contacts.go
- dnsimple.go
- domains.go
- domains_collaborators.go
- domains_delegation_signer_records.go
- domains_dnssec.go
- domains_email_forwards.go
- domains_pushes.go
- identity.go
- oauth.go
- registrar.go
- registrar_auto_renewal.go
- registrar_delegation.go
- registrar_domain_transfer_lock.go
- registrar_registrant_changes.go
- registrar_whois_privacy.go
- services.go
- services_domains.go
- templates.go
- templates_domains.go
- templates_records.go
- tlds.go
- users.go
- vanity_name_server.go
- webhooks.go
- zone_distributions.go
- zones.go
- zones_records.go