Skip to content

alyx/go-daddy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Unofficial GoDaddy API Client for Go

GoDoc Go Report Card

go-daddy provides a GoDaddy API client for the Go language. This package provides a net/http-based wrapper around the GoDaddy Developer API.

Requirements

This package is currently verified against the most recent version of the Go compiler. At time of publishing, December 2019, the most recent version is 1.13.

Installation

go-daddy can be installed via go get:

$ go get github.com/alyx/go-daddy/daddy

Configuration

Before use, please visit the GoDaddy Getting Started developer page, which walks you through getting access to the API, using the API as a self-serve user vs a reseller, and informs you of the terms of use.

You will need to generate a GoDaddy API key to use go-daddy.

After importing the core go-daddy package, you will need to initialize a client with godaddy.NewClient(APIKey, SecretKey, OTE) where APIKey is your GoDaddy API key, SecretKey is the secret key generated with it, and OTE is a value declaring if your API calls should point to the GoDaddy OTE (Test Environment) or the Production environment -- setting OTE to true specifies that you do wish to use the test environment, and false is the Production environment.

Usage

import "github.com/alyx/go-daddy/daddy"

Construct a new GoDaddy client, then use the various services on the client to access different parts of the GoDaddy API. For example:

client := daddy.NewClient("API Key", "Secret Key", true)

// list all domains owned by the owner of the API key
domains, err := client.Domains.List(nil, nil, 0, "", nil, "")

The services of a client divide the API into chunks corresponding to the structure of the GoDaddy API documentation at https://developer.godaddy.com/doc

The current available client services are: .Abuse, .Aftermarket, .Agreements, .Certificates, .Countries, .Domains, .Orders, .Shoppers, .Subscriptions

Example

This is a basic example showing how to generate a self-serve client and retrieve a list of all domains owned by the account.

package main

import (
	"log"

	"github.com/alyx/go-daddy"
)

func main() {
	client, _ := daddy.NewClient("abc", "def", false)

	myDomains, err := client.Domains.List(nil, nil, 0, "", nil, "")
	if err != nil {
		log.Fatal(err)
	}

	for _, value := range myDomains {
		log.Println(value.Domain)
	}
}

License

This package is licensed under the ISC license, see LICENSE

About

Unofficial GoDaddy API client for Golang

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages