SoftLayer DNS Provider

NOTE: This provider is currently has no maintainer. We are looking for a volunteer. If this provider breaks it may be disabled or removed if it can not be easily fixed.


To authenticate with SoftLayer requires at least a username and api_key for authentication. It can also optionally take a timeout and endpoint_url parameter however these are optional and will use standard defaults if not provided.

These can be supplied in the creds.json file:

  "softlayer": {
    "username": "myusername",
    "api_key": "mysecretapikey"

To maintain compatibility with existing softlayer CLI services these can also be provided by the SL_USERNAME and SL_API_KEY environment variables or specified in the ~/.softlayer, but this is discouraged. More information about these methods can be found at the softlayer-go library documentation.


Use this provider like any other DNS Provider:

var REG_NONE = NewRegistrar("none","NONE"); // no registrar
var SOFTLAYER = NewDnsProvider("softlayer", "SOFTLAYER");

D("example.tld", registrary, DnsProvider(SOFTLAYER),


This provider does not recognize any special metadata fields unique to SoftLayer dns. For compatibility with the pre-generated NAMESERVER fields it’s recommended to set the NS TTL to 86400 such as:

D("example.tld", REG_NONE, DnsProvider(SOFTLAYER),