Skip to content

dns-lexicon/dns-lexicon

Repository files navigation

Lexicon

Manipulate DNS records on various DNS providers in a standardized/agnostic way.

build_status tests_status coverage_status docker_pulls pypy_version github_license

Lexicon provides a way to manipulate DNS records on multiple DNS providers in a standardized way.

Lexicon can be used as:

  • a CLI tool:
# Create a TXT entry in domain.net zone hosted by CloudFlare
lexicon cloudflare create domain.net TXT --name foo --content bar
  • or a Python library:
# Create a TXT entry in domain.net zone hosted by CloudFlare
from lexicon.client import Client
from lexicon.config import ConfigResolver

config = ConfigResolver().with_env().with_dict({
    "provider_name" : "cloudflare",
    "domain": "domain.net",
})

with Client(config) as operations:
    operations.create_record("TXT", "foo", "bar")

Lexicon was designed to be used in automation, specifically letsencrypt.

Only DNS providers who have an API can be supported by lexicon.

Lexicon currently supports 88 providers:

aliyun arvancloud aurora azure cloudflare
cloudns cloudxns conoha constellix ddns
devnomads digitalocean dinahosting directadmin dnsimple
dnsmadeeasy dnspark dnspod dnsservices dreamhost
duckdns dynu easydns easyname euserv
exoscale flexibleengine gandi gehirn glesys
godaddy googleclouddns gransy gratisdns henet
hetzner hostingde hover infoblox infomaniak
internetbs inwx ionos joker linode
linode4 localzone luadns memset misaka
mythicbeasts namecheap namecom namesilo netcup
nfsn njalla nsone oci onapp
online ovh plesk pointhq porkbun
powerdns qcloud rackspace rage4 rcodezero
regfish route53 safedns sakuracloud scaleway
softlayer timeweb transip ultradns valuedomain
vercel vultr wedos yandex yandexcloud
zeit zilore zonomi    

Online documentation (user guide, configuration reference) is available in the Lexicon documentation.

For a quick start, please have a look in particular at the User guide.

If you want to help in the Lexicon development, you are welcome!

Please have a look at the Developer guide page to know how to start.

  • MIT
  • Logo: transform by Mike Rowe from the Noun Project

About

Manipulate DNS records on various DNS providers in a standardized way.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors 172

Languages