1
0
mirror of https://github.com/StackExchange/dnscontrol.git synced 2024-05-11 05:55:12 +00:00

DOCS: Added Gitbook filenames to JSON code snippets. (#2119)

This commit is contained in:
Jeffrey Cafferata
2023-03-02 22:17:27 +01:00
committed by GitHub
parent 4b37906049
commit 93c77ebe34
46 changed files with 166 additions and 29 deletions

View File

@ -13,31 +13,34 @@ This is based on:
For convenience, both configuration files are shown below. For convenience, both configuration files are shown below.
- `dnsconfig.js` {% code title="dnsconfig.js" %}
```javascript ```javascript
var PROVIDER_NONE = NewRegistrar('none'); var PROVIDER_NONE = NewRegistrar('none');
var PROVIDER_TRANSIP = NewDnsProvider('transip', '-'); var PROVIDER_TRANSIP = NewDnsProvider('transip', '-');
D('cafferata.dev', D('cafferata.dev',
PROVIDER_NONE, PROVIDER_NONE,
DnsProvider(PROVIDER_TRANSIP), DnsProvider(PROVIDER_TRANSIP),
DefaultTTL('1d'), DefaultTTL('1d'),
TXT('spf', [ TXT('spf', [
'v=spf1', 'v=spf1',
'-all' '-all'
].join(' ')) ].join(' '))
); );
``` ```
- `creds.json` {% endcode %}
```json
{ {% code title="creds.json" %}
"transip": { ```json
"TYPE": "TRANSIP", {
"AccountName": "cafferatax", "transip": {
"PrivateKey": "$TRANSIP_PRIVATE_KEY" "TYPE": "TRANSIP",
} "AccountName": "cafferatax",
} "PrivateKey": "$TRANSIP_PRIVATE_KEY"
``` }
}
```
{% endcode %}
## Gitlab CI - Preparation ## Gitlab CI - Preparation

View File

@ -5,6 +5,7 @@ configuration parameters required are stored in `creds.json`. The file contain
Here's a sample file: Here's a sample file:
{% code title="creds.json" %}
```json ```json
{ {
"cloudflare_tal": { "cloudflare_tal": {
@ -26,6 +27,7 @@ Here's a sample file:
} }
} }
``` ```
{% endcode %}
## Format ## Format
@ -79,6 +81,7 @@ For a smooth transition, please update your `creds.json` file now.
Here is the minimal entry required: Here is the minimal entry required:
{% code title="creds.json" %}
```json ```json
{ {
"entryName": { "entryName": {
@ -86,6 +89,7 @@ Here is the minimal entry required:
} }
} }
``` ```
{% endcode %}
### cleanup ### cleanup
@ -203,6 +207,7 @@ In this case, the 1Password CLI is used to inject the secrets from
a 1Password vault, rather than storing them in environment variables. a 1Password vault, rather than storing them in environment variables.
An example of a template file containing Linode and Cloudflare API credentials is available here: [creds.json](https://github.com/StackExchange/dnscontrol/blob/master/documentation/assets/1password/creds.json). An example of a template file containing Linode and Cloudflare API credentials is available here: [creds.json](https://github.com/StackExchange/dnscontrol/blob/master/documentation/assets/1password/creds.json).
{% code title="creds.json" %}
```json ```json
{ {
"bind": { "bind": {
@ -219,6 +224,7 @@ An example of a template file containing Linode and Cloudflare API credentials i
} }
} }
``` ```
{% endcode %}
## Don't store secrets in a Git repo! ## Don't store secrets in a Git repo!

View File

@ -53,6 +53,7 @@ specify any number of certificates, with up to 100 SAN entries each. Subject nam
The format of the file is a simple JSON array of objects: The format of the file is a simple JSON array of objects:
{% code title="certs.json" %}
```json ```json
[ [
{ {
@ -74,6 +75,7 @@ The format of the file is a simple JSON array of objects:
} }
] ]
``` ```
{% endcode %}
`dnscontrol get-certs` will attempt to issue any certificates referenced by this file, and will renew or re-issue if the certificate we already have is `dnscontrol get-certs` will attempt to issue any certificates referenced by this file, and will renew or re-issue if the certificate we already have is
close to expiry or if the set of subject names changes for a cert. close to expiry or if the set of subject names changes for a cert.

View File

@ -102,6 +102,7 @@ Modify this file to match your particular providers and domains. See [the DNSCon
Create a file called `creds.json` for storing provider configurations (API tokens and other account information). Create a file called `creds.json` for storing provider configurations (API tokens and other account information).
For example, to use both name.com and Cloudflare, you would have: For example, to use both name.com and Cloudflare, you would have:
{% code title="creds.json" %}
```json ```json
{ {
"cloudflare": { // The provider name used in dnsconfig.js "cloudflare": { // The provider name used in dnsconfig.js
@ -117,6 +118,7 @@ For example, to use both name.com and Cloudflare, you would have:
"none": { "TYPE": "NONE" } // The no-op provider "none": { "TYPE": "NONE" } // The no-op provider
} }
``` ```
{% endcode %}
Note: Do **not** store your `creds.json` file in Git unencrypted. Note: Do **not** store your `creds.json` file in Git unencrypted.
That is unsafe. Add `creds.json` to your That is unsafe. Add `creds.json` to your
@ -150,6 +152,7 @@ and renaming it.
The file looks like: The file looks like:
{% code title="creds.json" %}
```json ```json
{ {
"bind": { "bind": {
@ -162,6 +165,7 @@ The file looks like:
} }
} }
``` ```
{% endcode %}
Ignore the `r53_accountname` section. It is a placeholder and will be ignored. You Ignore the `r53_accountname` section. It is a placeholder and will be ignored. You
can use it later when you define your first set of API credentials. can use it later when you define your first set of API credentials.
@ -183,11 +187,13 @@ jq . < creds.json
FYI: `creds.json` fields can be read from an environment variable. The field must begin with a `$` followed by the variable name. No other text. For example: FYI: `creds.json` fields can be read from an environment variable. The field must begin with a `$` followed by the variable name. No other text. For example:
{% code title="creds.json" %}
```json ```json
{ {
"apikey": "$GANDI_V5_APIKEY" "apikey": "$GANDI_V5_APIKEY"
} }
``` ```
{% endcode %}
## 5. Test the sample files ## 5. Test the sample files

View File

@ -9,6 +9,7 @@ new types or destinations.
Notifications are set up in your credentials JSON file. They will use the `notifications` key to look for keys or configuration needed for various notification types. Notifications are set up in your credentials JSON file. They will use the `notifications` key to look for keys or configuration needed for various notification types.
{% code title="creds.json" %}
```json ```json
"r53": { "r53": {
... ...
@ -21,6 +22,7 @@ Notifications are set up in your credentials JSON file. They will use the `notif
"teams_url": "https://outlook.office.com/webhook/00000000-0000-0000-0000-000000000000@00000000-0000-0000-0000-000000000000/IncomingWebhook/00000000000000000000000000000000/00000000-0000-0000-0000-000000000000" "teams_url": "https://outlook.office.com/webhook/00000000-0000-0000-0000-000000000000@00000000-0000-0000-0000-000000000000/IncomingWebhook/00000000000000000000000000000000/00000000-0000-0000-0000-000000000000"
} }
``` ```
{% endcode %}
You also must run `dnscontrol preview` or `dnscontrol push` with the `-notify` flag to enable notification sending at all. You also must run `dnscontrol preview` or `dnscontrol push` with the `-notify` flag to enable notification sending at all.

View File

@ -19,6 +19,7 @@ To use this provider, add an entry to `creds.json` with `TYPE` set to `AKAMAIEDG
Example: Example:
{% code title="creds.json" %}
```json ```json
"akamaiedgedns": { "akamaiedgedns": {
"TYPE": "AKAMAIEDGEDNS", "TYPE": "AKAMAIEDGEDNS",
@ -30,6 +31,7 @@ Example:
"group_id": "NNNNNN" "group_id": "NNNNNN"
} }
``` ```
{% endcode %}
## Usage ## Usage

View File

@ -5,6 +5,7 @@ To use this provider, add an entry to `creds.json` with `TYPE` set to `AUTODNS`
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"autodns": { "autodns": {
@ -15,6 +16,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Usage ## Usage

View File

@ -33,6 +33,7 @@ the provider:
For instance, your `creds.json` might looks like: For instance, your `creds.json` might looks like:
{% code title="creds.json" %}
```json ```json
{ {
"axfrddns": { "axfrddns": {
@ -42,6 +43,7 @@ For instance, your `creds.json` might looks like:
} }
} }
``` ```
{% endcode %}
If either key is missing, DNSControl defaults to IP-based ACL If either key is missing, DNSControl defaults to IP-based ACL
authentication for that function. Including both keys is the most authentication for that function. Including both keys is the most
@ -58,6 +60,7 @@ var DSP_AXFRDDNS_B = NewDnsProvider("axfrddns-b");
And update `creds.json` accordingly: And update `creds.json` accordingly:
{% code title="creds.json" %}
```json ```json
{ {
"axfrddns-a": { "axfrddns-a": {
@ -70,6 +73,7 @@ And update `creds.json` accordingly:
} }
} }
``` ```
{% endcode %}
### Default nameservers ### Default nameservers

View File

@ -5,6 +5,7 @@ along with the API credentials.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"azuredns_main": { "azuredns_main": {
@ -17,6 +18,7 @@ Example:
} }
} }
``` ```
{% endcode %}
You can also use environment variables: You can also use environment variables:
@ -28,6 +30,7 @@ export AZURE_CLIENT_ID=AAAAAAAAA
export AZURE_CLIENT_SECRET=BBBBBBBBB export AZURE_CLIENT_SECRET=BBBBBBBBB
``` ```
{% code title="creds.json" %}
```json ```json
{ {
"azuredns_main": { "azuredns_main": {
@ -40,6 +43,7 @@ export AZURE_CLIENT_SECRET=BBBBBBBBB
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Azure DNS. This provider does not recognize any special metadata fields unique to Azure DNS.

View File

@ -17,6 +17,7 @@ Optional fields include:
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"bind": { "bind": {
@ -25,7 +26,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Meta configuration ## Meta configuration

View File

@ -16,6 +16,7 @@ Optional fields include:
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"cloudflare": { "cloudflare": {
@ -25,6 +26,7 @@ Example:
} }
} }
``` ```
{% endcode %}
# Authentication # Authentication
@ -39,6 +41,7 @@ provide a [Cloudflare API token](https://dash.cloudflare.com/profile/api-tokens)
This method is enabled by setting the `apitoken` value in `creds.json`: This method is enabled by setting the `apitoken` value in `creds.json`:
{% code title="creds.json" %}
```json ```json
{ {
"cloudflare": { "cloudflare": {
@ -48,6 +51,7 @@ This method is enabled by setting the `apitoken` value in `creds.json`:
} }
} }
``` ```
{% endcode %}
* `accountid` is found in the Cloudflare portal ("Account ID") on any "Website" page. Click on any site and you'll see the "Account ID" on the lower right side of the page. * `accountid` is found in the Cloudflare portal ("Account ID") on any "Website" page. Click on any site and you'll see the "Account ID" on the lower right side of the page.
* `apitoken` is something you must create. See [Cloudflare's documentation](https://support.cloudflare.com/hc/en-us/articles/200167836-Managing-API-Tokens-and-Keys) for instructions on how to generate and configure permissions on API tokens. (Spoiler alert: [link](https://dash.cloudflare.com/profile/api-tokens). The token must be granted rights (authorization to do certain tasks) at a very granular level. * `apitoken` is something you must create. See [Cloudflare's documentation](https://support.cloudflare.com/hc/en-us/articles/200167836-Managing-API-Tokens-and-Keys) for instructions on how to generate and configure permissions on API tokens. (Spoiler alert: [link](https://dash.cloudflare.com/profile/api-tokens). The token must be granted rights (authorization to do certain tasks) at a very granular level.
@ -74,6 +78,7 @@ This method is not recommended because these credentials give DNSControl access
This method is enabled by setting the `apikey` and `apiuser` values in `creds.json`: This method is enabled by setting the `apikey` and `apiuser` values in `creds.json`:
{% code title="creds.json" %}
```json ```json
{ {
"cloudflare": { "cloudflare": {
@ -84,6 +89,8 @@ This method is enabled by setting the `apikey` and `apiuser` values in `creds.js
} }
} }
``` ```
{% endcode %}
* `accountid` (see above) * `accountid` (see above)
* `apiuser` is the email address associated with the account. * `apiuser` is the email address associated with the account.
* `apikey` is found on [My Profile / API Tokens](https://dash.cloudflare.com/profile/api-tokens). * `apikey` is found on [My Profile / API Tokens](https://dash.cloudflare.com/profile/api-tokens).

View File

@ -5,6 +5,7 @@ along with your [Api user ID and password](https://www.cloudns.net/wiki/article/
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"cloudns": { "cloudns": {
@ -15,6 +16,7 @@ Example:
} }
} }
``` ```
{% endcode %}
Current version of provider doesn't support `sub-auth-user`. Current version of provider doesn't support `sub-auth-user`.

View File

@ -15,6 +15,7 @@ In your `creds.json` file, you must provide your API key and user/client token.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"cscglobal": { "cscglobal": {
@ -25,6 +26,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Usage ## Usage
An example `dnsconfig.js` configuration: An example `dnsconfig.js` configuration:

View File

@ -5,6 +5,7 @@ along with a deSEC account auth token.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"desec": { "desec": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to deSEC. This provider does not recognize any special metadata fields unique to deSEC.

View File

@ -5,6 +5,7 @@ along with your [DigitalOcean OAuth Token](https://cloud.digitalocean.com/settin
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"mydigitalocean": { "mydigitalocean": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to DigitalOcean. This provider does not recognize any special metadata fields unique to DigitalOcean.

View File

@ -7,6 +7,7 @@ You can also set the `baseurl` to use [DNSimple's free sandbox](https://develope
Examples: Examples:
{% code title="creds.json" %}
```json ```json
{ {
"dnsimple": { "dnsimple": {
@ -20,6 +21,7 @@ Examples:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to DNSimple. This provider does not recognize any special metadata fields unique to DNSimple.

View File

@ -5,6 +5,7 @@ along with your `api_key` and `secret_key`. More info about authentication can b
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"dnsmadeeasy": { "dnsmadeeasy": {
@ -14,6 +15,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Records ## Records

View File

@ -4,6 +4,7 @@ This is a read-only/monitoring "registrar". It does a DNS NS lookup to confirm t
To use this provider, add an entry to `creds.json` with `TYPE` set to `DNSOVERHTTPS`. To use this provider, add an entry to `creds.json` with `TYPE` set to `DNSOVERHTTPS`.
{% code title="creds.json" %}
```json ```json
{ {
"dohdefault": { "dohdefault": {
@ -11,11 +12,13 @@ To use this provider, add an entry to `creds.json` with `TYPE` set to `DNSOVERHT
} }
} }
``` ```
{% endcode %}
The DNS-over-HTTPS provider defaults to using Google Public DNS however you may configure an alternative RFC 8484 DoH provider using the `host` parameter. The DNS-over-HTTPS provider defaults to using Google Public DNS however you may configure an alternative RFC 8484 DoH provider using the `host` parameter.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"dohcloudflare": { "dohcloudflare": {
@ -24,6 +27,7 @@ Example:
} }
} }
``` ```
{% endcode %}
Some common DoH providers are: Some common DoH providers are:

View File

@ -5,6 +5,7 @@ along with your [Domainnameshop Token and Secret](https://www.domeneshop.no/admi
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"mydomainnameshop": { "mydomainnameshop": {
@ -14,6 +15,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Domainnameshop. This provider does not recognize any special metadata fields unique to Domainnameshop.

View File

@ -7,6 +7,7 @@ along with [API-Access](https://my.easyname.com/en/account/api) information
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"easyname": { "easyname": {
@ -19,6 +20,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to easyname. This provider does not recognize any special metadata fields unique to easyname.

View File

@ -28,6 +28,7 @@ https://admin.gandi.net/organizations/[not this hex string]/PLTS/[sharing id]/pr
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"gandi": { "gandi": {
@ -37,6 +38,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Gandi. This provider does not recognize any special metadata fields unique to Gandi.

View File

@ -9,6 +9,7 @@ Copy the full JSON object into your `creds.json`. Newlines in the private key ne
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"gcloud": { "gcloud": {
@ -27,6 +28,7 @@ Example:
} }
} }
``` ```
{% endcode %}
**Note**: **Note**:

View File

@ -5,6 +5,7 @@ along with a Gcore account API token.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"gcore": { "gcore": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Gcore. This provider does not recognize any special metadata fields unique to Gcore.

View File

@ -10,6 +10,7 @@ along with
your `dns.he.net` account username and password. These are the same username your `dns.he.net` account username and password. These are the same username
and password used to login to the [web interface](https://dns.he.net). and password used to login to the [web interface](https://dns.he.net).
{% code title="creds.json" %}
```json ```json
{ {
"hedns": { "hedns": {
@ -19,12 +20,14 @@ and password used to login to the [web interface](https://dns.he.net).
} }
} }
``` ```
{% endcode %}
### Two factor authentication ### Two factor authentication
If two-factor authentication has been enabled on your account you will also need to provide a valid TOTP code. If two-factor authentication has been enabled on your account you will also need to provide a valid TOTP code.
This can also be done via an environment variable: This can also be done via an environment variable:
{% code title="creds.json" %}
```json ```json
{ {
"hedns": { "hedns": {
@ -35,6 +38,7 @@ This can also be done via an environment variable:
} }
} }
``` ```
{% endcode %}
and then you can run and then you can run
@ -51,6 +55,7 @@ only available when first enabling two-factor authentication.
* Storing the shared secret together with the password weakens two factor authentication because both factors are stored * Storing the shared secret together with the password weakens two factor authentication because both factors are stored
in a single place. in a single place.
{% code title="creds.json" %}
```json ```json
{ {
"hedns":{ "hedns":{
@ -60,6 +65,7 @@ only available when first enabling two-factor authentication.
} }
} }
``` ```
{% endcode %}
### Persistent Sessions ### Persistent Sessions
@ -78,6 +84,7 @@ This option is disabled by default when this key is not present,
*full* access to your Hurrican Electric account and will be able to modify and delete your DNS entries. *full* access to your Hurrican Electric account and will be able to modify and delete your DNS entries.
* It should be stored in a location only trusted users can access. * It should be stored in a location only trusted users can access.
{% code title="creds.json" %}
```json ```json
{ {
"hedns":{ "hedns":{
@ -88,7 +95,7 @@ This option is disabled by default when this key is not present,
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Hurricane Electric DNS. This provider does not recognize any special metadata fields unique to Hurricane Electric DNS.

View File

@ -5,6 +5,7 @@ along with a [Hetzner API Key](https://dns.hetzner.com/settings/api-token).
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"hetzner": { "hetzner": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
@ -81,6 +83,7 @@ Example: Your per minute quota is 60 requests and in your settings you
In your `creds.json` for all `HETZNER` provider entries: In your `creds.json` for all `HETZNER` provider entries:
{% code title="creds.json" %}
```json ```json
{ {
"hetzner": { "hetzner": {
@ -90,6 +93,7 @@ In your `creds.json` for all `HETZNER` provider entries:
} }
} }
``` ```
{% endcode %}
Every response from the Hetzner DNS Console API includes your limits: Every response from the Hetzner DNS Console API includes your limits:
@ -114,6 +118,7 @@ With `start_with_default_rate_limit` DNSControl uses a quota equivalent to
In your `creds.json` for all `HETZNER` provider entries: In your `creds.json` for all `HETZNER` provider entries:
{% code title="creds.json" %}
```json ```json
{ {
"hetzner": { "hetzner": {
@ -123,3 +128,4 @@ In your `creds.json` for all `HETZNER` provider entries:
} }
} }
``` ```
{% endcode %}

View File

@ -14,6 +14,7 @@ along with your HEXONET login data.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"hexonet": { "hexonet": {
@ -26,9 +27,11 @@ Example:
} }
} }
``` ```
{% endcode %}
Here a working example for our OT&E System: Here a working example for our OT&E System:
{% code title="creds.json" %}
```json ```json
{ {
"hexonet": { "hexonet": {
@ -40,6 +43,7 @@ Here a working example for our OT&E System:
} }
} }
``` ```
{% endcode %}
{% hint style="info" %} {% hint style="info" %}
**NOTE**: The above credentials are known to the public. **NOTE**: The above credentials are known to the public.

View File

@ -5,6 +5,7 @@ along with your [`authToken` and optionally an `ownerAccountId`](https://www.hos
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"hosting.de": { "hosting.de": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Usage ## Usage
@ -36,6 +38,7 @@ Using them requires setting the `baseURL` and (optionally) overriding the defaul
An example `creds.json` configuration: An example `creds.json` configuration:
{% code title="creds.json" %}
```json ```json
{ {
"http.net": { "http.net": {
@ -45,6 +48,7 @@ An example `creds.json` configuration:
} }
} }
``` ```
{% endcode %}
An example `dnsconfig.js` configuration: An example `dnsconfig.js` configuration:

View File

@ -7,6 +7,7 @@ along with an API key and account password.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"internetbs": { "internetbs": {
@ -16,6 +17,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Internet.bs. This provider does not recognize any special metadata fields unique to Internet.bs.

View File

@ -7,6 +7,7 @@ along with your INWX username and password.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"inwx": { "inwx": {
@ -16,6 +17,7 @@ Example:
} }
} }
``` ```
{% endcode %}
### Two factor authentication ### Two factor authentication
@ -31,6 +33,7 @@ See issue [issue 848](https://github.com/StackExchange/dnscontrol/issues/848#iss
If two factor authentication has been enabled you will also need to provide a valid TOTP number. If two factor authentication has been enabled you will also need to provide a valid TOTP number.
This can also be done via an environment variable: This can also be done via an environment variable:
{% code title="creds.json" %}
```json ```json
{ {
"inwx": { "inwx": {
@ -41,6 +44,7 @@ This can also be done via an environment variable:
} }
} }
``` ```
{% endcode %}
and then you can run and then you can run
@ -55,6 +59,7 @@ This secret is only shown once when two factor authentication is enabled and you
* Anyone with access to this `creds.json` file will have *full* access to your INWX account and will be able to transfer and/or delete your domains * Anyone with access to this `creds.json` file will have *full* access to your INWX account and will be able to transfer and/or delete your domains
* Storing the shared secret together with the password weakens two factor authentication because both factors are stored in a single place. * Storing the shared secret together with the password weakens two factor authentication because both factors are stored in a single place.
{% code title="creds.json" %}
```json ```json
{ {
"inwx": { "inwx": {
@ -65,12 +70,13 @@ This secret is only shown once when two factor authentication is enabled and you
} }
} }
``` ```
{% endcode %}
### Sandbox ### Sandbox
You can optionally also specify sandbox with a value of 1 to You can optionally also specify sandbox with a value of 1 to
redirect all requests to the sandbox API instead: redirect all requests to the sandbox API instead:
{% code title="creds.json" %}
```json ```json
{ {
"inwx":{ "inwx":{
@ -80,6 +86,7 @@ redirect all requests to the sandbox API instead:
} }
} }
``` ```
{% endcode %}
If sandbox is omitted or set to any other value the production If sandbox is omitted or set to any other value the production
API will be used. API will be used.

View File

@ -5,6 +5,7 @@ along with your [Linode Personal Access Token](https://cloud.linode.com/profile/
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"linode": { "linode": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Linode. This provider does not recognize any special metadata fields unique to Linode.

View File

@ -34,6 +34,7 @@ along with other settings:
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"msdns": { "msdns": {
@ -43,6 +44,7 @@ Example:
} }
} }
``` ```
{% endcode %}
An example DNS configuration: An example DNS configuration:

View File

@ -7,6 +7,7 @@ along with your Namecheap API username and key:
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"namecheap": { "namecheap": {
@ -16,10 +17,12 @@ Example:
} }
} }
``` ```
{% endcode %}
You can optionally specify BaseURL to use a different endpoint - typically the You can optionally specify BaseURL to use a different endpoint - typically the
sandbox: sandbox:
{% code title="creds.json" %}
```json ```json
{ {
"namecheapSandbox": { "namecheapSandbox": {
@ -30,6 +33,7 @@ sandbox:
} }
} }
``` ```
{% endcode %}
if BaseURL is omitted, the production namecheap URL is assumed. if BaseURL is omitted, the production namecheap URL is assumed.

View File

@ -11,6 +11,7 @@ along with your name.com API username and access token:
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"name.com": { "name.com": {
@ -20,6 +21,7 @@ Example:
} }
} }
``` ```
{% endcode %}
There is another key name `apiurl` but it is optional and defaults to the correct value. If you want to use the test environment ("OT&E"), then add this: There is another key name `apiurl` but it is optional and defaults to the correct value. If you want to use the test environment ("OT&E"), then add this:

View File

@ -5,6 +5,7 @@ along with your [api key, password and your customer number](https://www.netcup-
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"netcup": { "netcup": {
@ -15,6 +16,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Usage ## Usage
An example `dnsconfig.js` configuration: An example `dnsconfig.js` configuration:

View File

@ -6,6 +6,7 @@ account slug. This is _typically_ your username on Netlify.
Examples: Examples:
{% code title="creds.json" %}
```json ```json
{ {
"netlify": { "netlify": {
@ -15,6 +16,7 @@ Examples:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Netlify. This provider does not recognize any special metadata fields unique to Netlify.

View File

@ -5,6 +5,7 @@ along with your NS1 api key.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"ns1": { "ns1": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to NS1. This provider does not recognize any special metadata fields unique to NS1.

View File

@ -8,6 +8,7 @@ The OCID of the compartment DNS resources should be put in can also optionally b
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"oracle": { "oracle": {
@ -21,6 +22,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Oracle Cloud. This provider does not recognize any special metadata fields unique to Oracle Cloud.

View File

@ -5,6 +5,7 @@ along with a OVH app-key, app-secret-key and consumer-key.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"ovh": { "ovh": {
@ -15,6 +16,7 @@ Example:
} }
} }
``` ```
{% endcode %}
See [the Activation section](#activation) for details on obtaining these credentials. See [the Activation section](#activation) for details on obtaining these credentials.
@ -95,6 +97,7 @@ curl -XPOST -H"X-Ovh-Application: <you-app-key>" -H "Content-type: application/j
It should return something akin to: It should return something akin to:
{% code title="creds.json" %}
```json ```json
{ {
"validationUrl": "https://eu.api.ovh.com/auth/?credentialToken=<long-token>", "validationUrl": "https://eu.api.ovh.com/auth/?credentialToken=<long-token>",
@ -102,6 +105,7 @@ It should return something akin to:
"state": "pendingValidation" "state": "pendingValidation"
} }
``` ```
{% endcode %}
Open the "validationUrl" in a browser and log in with your OVH account. This will link the app with your account, Open the "validationUrl" in a browser and log in with your OVH account. This will link the app with your account,
authorizing it to access your zones and domains. authorizing it to access your zones and domains.

View File

@ -5,6 +5,7 @@ along with your Packetframe Token which can be extracted from the `token` cookie
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"packetframe": { "packetframe": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to Packetframe. This provider does not recognize any special metadata fields unique to Packetframe.

View File

@ -5,6 +5,7 @@ along with your `api_key` and `secret_key`. More info about authentication can b
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"porkbun": { "porkbun": {
@ -14,6 +15,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata

View File

@ -6,6 +6,7 @@ In most cases the Server id is `localhost`.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"powerdns": { "powerdns": {
@ -16,6 +17,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
Following metadata are available: Following metadata are available:

View File

@ -5,6 +5,7 @@ along with API credentials.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"r53_main": { "r53_main": {
@ -16,6 +17,7 @@ Example:
} }
} }
``` ```
{% endcode %}
Alternatively you can also use environment variables. This is discouraged unless your environment provides them already. Alternatively you can also use environment variables. This is discouraged unless your environment provides them already.
@ -25,6 +27,7 @@ export AWS_SECRET_ACCESS_KEY=YYYYYYYYY
export AWS_SESSION_TOKEN=ZZZZZZZZ export AWS_SESSION_TOKEN=ZZZZZZZZ
``` ```
{% code title="creds.json" %}
```json ```json
{ {
"r53_main": { "r53_main": {
@ -34,6 +37,7 @@ export AWS_SESSION_TOKEN=ZZZZZZZZ
} }
} }
``` ```
{% endcode %}
Alternatively, this provider supports [named profiles](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html). In that case export the following variable: Alternatively, this provider supports [named profiles](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html). In that case export the following variable:
@ -45,6 +49,7 @@ and provide a minimal entry in `creds.json`:
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"r53_main": { "r53_main": {
@ -52,6 +57,7 @@ Example:
} }
} }
``` ```
{% endcode %}
You can find some other ways to authenticate to Route53 in the [go sdk configuration](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html). You can find some other ways to authenticate to Route53 in the [go sdk configuration](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html).

View File

@ -5,6 +5,7 @@ along with your [API Token](https://noc-portal.rz.rwth-aachen.de/dns-admin/en/ap
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"rwth": { "rwth": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata
This provider does not recognize any special metadata fields unique to it. This provider does not recognize any special metadata fields unique to it.

View File

@ -12,6 +12,7 @@ Authenticating with SoftLayer requires at least a `username` and `api_key` for a
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"softlayer": { "softlayer": {
@ -21,6 +22,7 @@ Example:
} }
} }
``` ```
{% endcode %}
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](https://github.com/softlayer/softlayer-go#sessions). 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](https://github.com/softlayer/softlayer-go#sessions).

View File

@ -9,6 +9,7 @@ You can login with your `AccountName` and a `PrivateKey` which can be generated
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"transip": { "transip": {
@ -18,12 +19,13 @@ Example:
} }
} }
``` ```
{% endcode %}
### Access tokens ### Access tokens
Or you can choose to have an `AccessToken` as credential. These can be generated in the [TransIP control panel](https://www.transip.nl/cp/account/api/) and have a limited lifetime Or you can choose to have an `AccessToken` as credential. These can be generated in the [TransIP control panel](https://www.transip.nl/cp/account/api/) and have a limited lifetime
{% code title="creds.json" %}
```json ```json
{ {
"transip": { "transip": {
@ -32,7 +34,7 @@ Or you can choose to have an `AccessToken` as credential. These can be generated
} }
} }
``` ```
{% endcode %}
## Metadata ## Metadata

View File

@ -5,6 +5,7 @@ along with a Vultr personal access token.
Example: Example:
{% code title="creds.json" %}
```json ```json
{ {
"vultr": { "vultr": {
@ -13,6 +14,7 @@ Example:
} }
} }
``` ```
{% endcode %}`
## Metadata ## Metadata