1 Name = "Sonic"
2 Description = ''''''
3 URL = "https://www.sonic.com/"
4 Code = "sonic"
5 Since = "v4.4.0"
6 7 Example = '''
8 SONIC_USER_ID=12345 \
9 SONIC_API_KEY=4d6fbf2f9ab0fa11697470918d37625851fc0c51 \
10 lego --dns sonic -d '*.example.com' -d example.com run
11 '''
12 13 Additional = '''
14 ## API keys
15 16 The API keys must be generated by calling the `dyndns/api_key` endpoint.
17 18 Example:
19 20 ```bash
21 $ curl -X POST -H "Content-Type: application/json" --data '{"username":"notarealuser","password":"notarealpassword","hostname":"example.com"}' https://public-api.sonic.net/dyndns/api_key
22 {"userid":"12345","apikey":"4d6fbf2f9ab0fa11697470918d37625851fc0c51","result":200,"message":"OK"}
23 ```
24 25 See https://public-api.sonic.net/dyndns/#requesting_an_api_key for additional details.
26 27 This `userid` and `apikey` combo allow modifications to any DNS entries connected to the managed domain (hostname).
28 29 Hostname should be the toplevel domain managed e.g. `example.com` not `www.example.com`.
30 '''
31 32 [Configuration]
33 [Configuration.Credentials]
34 SONIC_USER_ID = "User ID"
35 SONIC_API_KEY = "API Key"
36 [Configuration.Additional]
37 SONIC_POLLING_INTERVAL = "Time between DNS propagation check in seconds (Default: 2)"
38 SONIC_PROPAGATION_TIMEOUT = "Maximum waiting time for DNS propagation in seconds (Default: 60)"
39 SONIC_TTL = "The TTL of the TXT record used for the DNS challenge in seconds (Default: 120)"
40 SONIC_SEQUENCE_INTERVAL = "Time between sequential requests in seconds (Default: 60)"
41 SONIC_HTTP_TIMEOUT = "API request timeout in seconds (Default: 10)"
42 43 [Links]
44 API = "https://public-api.sonic.net/dyndns/"
45 46