github.com/StackExchange/dnscontrol/v4@v4.11.0/documentation/provider/transip.md (about)

     1  ## Configuration
     2  
     3  To use this provider, add an entry to `creds.json` with `TYPE` set to `TRANSIP`
     4  along with your TransIP credentials.
     5  
     6  ### Key Pairs
     7  
     8  You can login with your `AccountName` and a `PrivateKey` which can be generated in the [TransIP control panel](https://www.transip.nl/cp/account/api/). The `PrivateKey` is a stringified version of the Private Key given by the API, see the example below, each newline is replaced by "\n".
     9  
    10  Example:
    11  
    12  {% code title="creds.json" %}
    13  ```json
    14  {
    15    "transip": {
    16      "TYPE": "TRANSIP",
    17      "AccountName": "your-account-name",
    18      "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nMIICXAIBAAKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUp\nwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5\n1s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQABAoGAFijko56+qGyN8M0RVyaRAXz++xTqHBLh\n3tx4VgMtrQ+WEgCjhoTwo23KMBAuJGSYnRmoBZM3lMfTKevIkAidPExvYCdm5dYq3XToLkkLv5L2\npIIVOFMDG+KESnAFV7l2c+cnzRMW0+b6f8mR1CJzZuxVLL6Q02fvLi55/mbSYxECQQDeAw6fiIQX\nGukBI4eMZZt4nscy2o12KyYner3VpoeE+Np2q+Z3pvAMd/aNzQ/W9WaI+NRfcxUJrmfPwIGm63il\nAkEAxCL5HQb2bQr4ByorcMWm/hEP2MZzROV73yF41hPsRC9m66KrheO9HPTJuo3/9s5p+sqGxOlF\nL0NDt4SkosjgGwJAFklyR1uZ/wPJjj611cdBcztlPdqoxssQGnh85BzCj/u3WqBpE2vjvyyvyI5k\nX6zk7S0ljKtt2jny2+00VsBerQJBAJGC1Mg5Oydo5NwD6BiROrPxGo2bpTbu/fhrT8ebHkTz2epl\nU9VQQSQzY1oZMVX8i1m5WUTLPz2yLJIBQVdXqhMCQBGoiuSoSjafUhV7i1cEGpb88h5NBYZzWXGZ\n37sJ5QsW+sJyoNde3xH8vdXhzU7eT82D6X/scw9RZz+/6rCJ4p0=\n-----END RSA PRIVATE KEY-----"
    19    }
    20  }
    21  ```
    22  {% endcode %}
    23  
    24  ### Access tokens
    25  
    26  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
    27  
    28  {% code title="creds.json" %}
    29  ```json
    30  {
    31    "transip": {
    32      "TYPE": "TRANSIP",
    33      "AccessToken": "your-transip-personal-access-token"
    34    }
    35  }
    36  ```
    37  {% endcode %}
    38  
    39  
    40  ## Metadata
    41  
    42  This provider does not recognize any special metadata fields unique to TransIP.
    43  
    44  ## Usage
    45  
    46  An example configuration:
    47  
    48  {% code title="dnsconfig.js" %}
    49  ```javascript
    50  var REG_NONE = NewRegistrar("none");
    51  var DSP_TRANSIP = NewDnsProvider("transip");
    52  
    53  D("example.com", REG_NONE, DnsProvider(DSP_TRANSIP),
    54      A("test", "1.2.3.4"),
    55  END);
    56  ```
    57  {% endcode %}
    58  
    59  ## Activation
    60  
    61  TransIP depends on a TransIP personal access token.
    62  
    63  ## Limitations
    64  
    65  > "When multiple or none of the current DNS entries matches, the response will be an error with http status code 406." — _[TransIP - REST API - Update single DNS entry](https://api.transip.nl/rest/docs.html#domains-dns-patch)_
    66  
    67  This makes it not possible, for example, to update a [`CAA()`](../language-reference/domain-modifiers/CAA.md) record in one update. Instead, the old DNS entry is deleted and the replacement is added. You'll see `[1/2]` and `[2/2]` in the DNSControl output whenever this happens.
    68  
    69  ### Example with a `CAA_BUILDER()`
    70  
    71  {% code title="dnsconfig.js" %}
    72  ```diff
    73  CAA_BUILDER({
    74      label: '@',
    75      iodef: 'mailto:info@cafferata.dev',
    76  +   iodef_critical: true,
    77      issue: [
    78          'letsencrypt.org',
    79      ],
    80      issuewild: 'none',
    81  }),
    82  ```
    83  {% endcode %}
    84  
    85  ```shell
    86  dnscontrol push --domains cafferata.dev
    87  ```
    88  
    89  ```shell
    90  ******************** Domain: cafferata.dev
    91  2 corrections (transip)
    92  #1: [1/2] delete: ± MODIFY cafferata.dev CAA (0 iodef "mailto:info@cafferata.dev" ttl=86400) -> (128 iodef "mailto:info@cafferata.dev" ttl=86400)
    93  SUCCESS!
    94  #2: [2/2] create: ± MODIFY cafferata.dev CAA (0 iodef "mailto:info@cafferata.dev" ttl=86400) -> (128 iodef "mailto:info@cafferata.dev" ttl=86400)
    95  SUCCESS!
    96  Done. 2 corrections.
    97  ```