dnscontrol/documentation/provider/namecheap.md
2024-05-13 08:47:23 -04:00

1.9 KiB

This is the provider for Namecheap.

Configuration

To use this provider, add an entry to creds.json with TYPE set to NAMECHEAP along with your Namecheap API username and key:

Example:

{% code title="creds.json" %}

{
  "namecheap": {
    "TYPE": "NAMECHEAP",
    "apikey": "yourApiKeyFromNameCheap",
    "apiuser": "yourUsername"
  }
}

{% endcode %}

You can optionally specify BaseURL to use a different endpoint - typically the sandbox:

{% code title="creds.json" %}

{
  "namecheapSandbox": {
    "TYPE": "NAMECHEAP",
    "apikey": "yourApiKeyFromNameCheap",
    "apiuser": "yourUsername",
    "BaseURL": "https://api.sandbox.namecheap.com/xml.response"
  }
}

{% endcode %}

if BaseURL is omitted, the production namecheap URL is assumed.

Metadata

This provider does not recognize any special metadata fields unique to Namecheap.

Usage

An example configuration:

{% code title="dnsconfig.js" %}

var REG_NAMECHEAP = NewRegistrar("namecheap");
var DSP_BIND = NewDnsProvider("bind");

D("example.com", REG_NAMECHEAP, DnsProvider(DSP_BIND),
    A("test", "1.2.3.4"),
END);

{% endcode %}

Namecheap provides custom redirect records URL, URL301, and FRAME. These records can be used like any other record:

{% code title="dnsconfig.js" %}

var REG_NAMECHEAP = NewRegistrar("namecheap");
var DSP_NAMECHEAP = NewDnsProvider("namecheap");

D("example.com", REG_NAMECHEAP, DnsProvider(DSP_NAMECHEAP),
  URL("@", "http://example.com/"),
  URL("www", "http://example.com/"),
  URL301("backup", "http://backup.example.com/"),
END)

{% endcode %}

Activation

In order to activate API functionality on your Namecheap account, you must enable it for your account and wait for their review process. More information on enabling API access is located here.