Skip to main content

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

Project description

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

build_status coverage_status docker_pulls pypy_version pypy_python_support github_license

Why using Lexicon?

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

action = {
    "provider_name" : "cloudflare",
    "action": "create",
    "domain": "domain.net",
    "type": "TXT",
    "name": "foo",
    "content": "bar",
}
config = ConfigResolver().with_env().with_dict(action)
Client(config).execute()

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

Supported providers

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

The current supported providers are:

aliyun

aurora

azure

cloudflare

cloudns

cloudxns

conoha

constellix

ddns

digitalocean

dinahosting

directadmin

dnsimple

dnsmadeeasy

dnspark

dnspod

dreamhost

dynu

easydns

easyname

euserv

exoscale

gandi

gehirn

glesys

godaddy

googleclouddns

gransy

gratisdns

henet

hetzner

hostingde

hover

infoblox

infomaniak

internetbs

inwx

joker

linode

linode4

localzone

luadns

memset

misaka

mythicbeasts

namecheap

namecom

namesilo

netcup

nfsn

njalla

nsone

oci

onapp

online

ovh

plesk

pointhq

porkbun

powerdns

rackspace

rage4

rcodezero

route53

safedns

sakuracloud

softlayer

transip

ultradns

valuedomain

vercel

vultr

webgo

yandex

yandexcloud

zeit

zilore

zonomi

Documentation

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.

Contributing

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.

Licensing

  • MIT

  • Logo: transform by Mike Rowe from the Noun Project

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dns_lexicon-3.11.5.tar.gz (152.8 kB view details)

Uploaded Source

Built Distribution

dns_lexicon-3.11.5-py3-none-any.whl (233.2 kB view details)

Uploaded Python 3

File details

Details for the file dns_lexicon-3.11.5.tar.gz.

File metadata

  • Download URL: dns_lexicon-3.11.5.tar.gz
  • Upload date:
  • Size: 152.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.10.7 Linux/5.15.0-1020-azure

File hashes

Hashes for dns_lexicon-3.11.5.tar.gz
Algorithm Hash digest
SHA256 030c6134ab098c9ac2d5d4a0527f04db3ee9f5256e3245cc4cd2f586b9fe2e9a
MD5 0bd212fde5b7a3668fc1a295edae8a0e
BLAKE2b-256 cae6c87afe904ca8a757949161d917f4663a8455249921039fb13398ad4dbada

See more details on using hashes here.

File details

Details for the file dns_lexicon-3.11.5-py3-none-any.whl.

File metadata

  • Download URL: dns_lexicon-3.11.5-py3-none-any.whl
  • Upload date:
  • Size: 233.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.10.7 Linux/5.15.0-1020-azure

File hashes

Hashes for dns_lexicon-3.11.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e8e494f1ed8176819f1593d142c8756cf47cf09bf4ede164549f15fcb3ad8d0c
MD5 b5cd0c18cbfd18d99192ab8dee11186f
BLAKE2b-256 0964cce162137f2871a3df6a1c460315b836b709f58b6866c7674df6f24080b0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page