> For the complete documentation index, see [llms.txt](https://docs.dnscontrol.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dnscontrol.org/provider/adguardhome.md).

# AdGuard Home

This is the provider for [AdGuardHome](https://github.com/AdguardTeam/AdGuardHome).

### Important notes

This provider only supports the following record types.

* [A](/language-reference/domain-modifiers/a.md)
* [AAAA](/language-reference/domain-modifiers/aaaa.md)
* [CNAME](/language-reference/domain-modifiers/cname.md)
* [ALIAS](/language-reference/domain-modifiers/alias.md)
* [ADGUARDHOME\_A\_PASSTHROUGH](/language-reference/domain-modifiers/service-provider-specific/adguard-home/adguardhome_a_passthrough.md)
* [ADGUARDHOME\_AAAA\_PASSTHROUGH](/language-reference/domain-modifiers/service-provider-specific/adguard-home/adguardhome_aaaa_passthrough.md)

### Configuration

To use this provider, add an entry to `creds.json` with `TYPE` set to `ADGUARDHOME`.

Required fields include:

* `username` and `password`: Authentication information
* `host`: The hostname/address of AdGuard Home instance

Example:

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

```json
{
  "adguard_home": {
    "TYPE": "ADGUARDHOME",
    "username": "admin",
    "password": "your-password",
    "host": "https://foo.com"
  }
}
```

{% endcode %}

### Usage

An example configuration:

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

```javascript
var REG_NONE = NewRegistrar("none");
var DSP_ADGUARDHOME = NewDnsProvider("adguard_home");

D("example.com", REG_NONE, DnsProvider(DSP_ADGUARDHOME),
    A("foo", "1.2.3.4"),
    AAAA("another", "2003::1"),
    ALIAS("@", "www.example.com."),
    CNAME("myalias", "www.example.com."),
    ADGUARDHOME_A_PASSTHROUGH("abc", ""),
    ADGUARDHOME_AAAA_PASSTHROUGH("abc", ""),
);
```

{% endcode %}
