Skip to main content
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

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

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.

Supported providers

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

Lexicon currently supports 90 providers:

aliyun

arvancloud

aurora

azure

cloudflare

cloudns

cloudxns

conoha

constellix

ddns

desec

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

httpnet

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

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

Metadata

Release files for dns-lexicon 3.26.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dns-lexicon 3.26.0
File Size Uploaded Provenance Actions
dns_lexicon-3.26.0.tar.gz 177.4 kB Without provenance Details for dns_lexicon-3.26.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for dns-lexicon 3.26.0
File Interpreter ABI Platform Actions
dns_lexicon-3.26.0-py3-none-any.whl Python 3 none any Details for dns_lexicon-3.26.0-py3-none-any.whl

Total release size: 455.5 kB

Release files / dns_lexicon-3.26.0.tar.gz

Download URL dns_lexicon-3.26.0.tar.gz
Size 177.4 kB
Tags Source
SHA-256 checksum
How to use checksums
57d94f5d181fc30445b0428ddf548f750669f2002ae630410c17d5f425aa7be7
BLAKE2b-256 checksum
How to use checksums
df2c3f59d022b897477cbf2adcf15995609b5a9cd490a48cf032da64f85753bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / dns_lexicon-3.26.0-py3-none-any.whl

Download URL dns_lexicon-3.26.0-py3-none-any.whl
Size 278.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b62be5645b96b793203749c1735e86abfd080058a4721a8dab9d2a9954010595
BLAKE2b-256 checksum
How to use checksums
cd1211f7439d3aea193a2de3020efe08daa19f8a84a8c57191a442c81e8cf426
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for dns-lexicon 3.26.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

3.26.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page