github.com/StackExchange/dnscontrol/v4@v4.11.0/documentation/language-reference/top-level-functions/DOMAIN_ELSEWHERE.md (about)

     1  ---
     2  name: DOMAIN_ELSEWHERE
     3  parameters:
     4    - name
     5    - registrar
     6    - nameserver_names
     7  parameter_types:
     8    name: string
     9    registrar: string
    10    nameserver_names: string[]
    11  ---
    12  
    13  `DOMAIN_ELSEWHERE()` is a helper macro that lets you easily indicate that
    14  a domain's zones are managed elsewhere. That is, it permits you easily delegate
    15  a domain to a hard-coded list of DNS servers.
    16  
    17  `DOMAIN_ELSEWHERE` is useful when you control a domain's registrar but not the
    18  DNS servers. For example, suppose you own a domain but the DNS servers are run
    19  by someone else, perhaps a SaaS product you've subscribed to or a DNS server
    20  that is run by your brother-in-law who doesn't trust you with the API keys that
    21  would let you maintain the domain using DNSControl. You need an easy way to
    22  point (delegate) the domain at a specific list of DNS servers.
    23  
    24  For example these two statements are equivalent:
    25  
    26  {% code title="dnsconfig.js" %}
    27  ```javascript
    28  DOMAIN_ELSEWHERE("example.com", REG_MY_PROVIDER, ["ns1.foo.com", "ns2.foo.com"]);
    29  ```
    30  {% endcode %}
    31  
    32  {% code title="dnsconfig.js" %}
    33  ```javascript
    34  D("example.com", REG_MY_PROVIDER, DnsProvider(DSP_MY_PROVIDER),
    35      NO_PURGE,
    36      NAMESERVER("ns1.foo.com"),
    37      NAMESERVER("ns2.foo.com"),
    38  END);
    39  ```
    40  {% endcode %}
    41  
    42  {% hint style="info" %}
    43  **NOTE**: The [`NO_PURGE`](../domain-modifiers/NO_PURGE.md) is used out of abundance of caution but since no
    44  `DnsProvider()` statements exist, no updates would be performed.
    45  {% endhint %}