Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

dns-lexicon

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dns-lexicon

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

  • 3.18.0
  • PyPI
  • Socket score

Maintainers
2

============ |logo_named|

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|

.. |logo_named| image:: https://raw.githubusercontent.com/AnalogJ/lexicon/master/docs/images/logo_named.svg :alt: Lexicon .. |build_status| image:: https://img.shields.io/azure-devops/build/AnalogJ/8425f0f5-0178-4d8c-b1fd-11db7e11b6a7/1/master :target: https://dev.azure.com/AnalogJ/lexicon/_build/latest?definitionId=1&branchName=master .. |coverage_status| image:: https://img.shields.io/coverallsCoverage/github/AnalogJ/lexicon :target: https://coveralls.io/github/AnalogJ/lexicon?branch=master .. |docker_pulls| image:: https://img.shields.io/docker/pulls/analogj/lexicon :target: https://hub.docker.com/r/analogj/lexicon .. |pypy_version| image:: https://img.shields.io/pypi/v/dns-lexicon :target: https://pypi.python.org/pypi/dns-lexicon .. |pypy_python_support| image:: https://img.shields.io/pypi/pyversions/dns-lexicon :target: https://pypi.python.org/pypi/dns-lexicon .. |github_license| image:: https://img.shields.io/github/license/AnalogJ/lexicon :target: https://github.com/AnalogJ/lexicon/blob/master/LICENSE

.. contents:: Table of Contents :local:

.. tag: intro-begin

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:

.. code-block:: bash

# 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:

.. code-block:: python

# 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.

  • Generating Intranet & Private Network SSL Certificates using Lets Encrypt & Lexicon <http://blog.thesparktree.com/post/138999997429/generating-intranet-and-private-network-ssl>_

Supported providers

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

The current supported providers are:

.. This section is autogenerated and should not been modified directly. However you should add a reference to the provider API in the list below, using the following syntax: .. _provider: URL_API

.. tag: providers-table-begin

+-----------------+-----------------+-----------------+-----------------+-----------------+ | aliyun_ | aurora_ | azure_ | cloudflare_ | cloudns_ | +-----------------+-----------------+-----------------+-----------------+-----------------+ | cloudxns_ | conoha_ | constellix_ | ddns_ | 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_ | +-----------------+-----------------+-----------------+-----------------+-----------------+ | 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_ | route53_ | safedns_ | sakuracloud_ | +-----------------+-----------------+-----------------+-----------------+-----------------+ | softlayer_ | timeweb_ | transip_ | ultradns_ | valuedomain_ | +-----------------+-----------------+-----------------+-----------------+-----------------+ | vercel_ | vultr_ | webgo_ | wedos_ | yandex_ | +-----------------+-----------------+-----------------+-----------------+-----------------+ | yandexcloud_ | zeit_ | zilore_ | zonomi_ | | +-----------------+-----------------+-----------------+-----------------+-----------------+

.. tag: providers-table-end

.. _aliyun: https://help.aliyun.com/document_detail/29739.html .. _aurora: https://www.pcextreme.com/aurora/dns .. _azure: https://docs.microsoft.com/en-us/rest/api/dns/ .. _cloudflare: https://api.cloudflare.com/#endpoints .. _cloudns: https://www.cloudns.net/wiki/article/56/ .. _cloudxns: https://www.cloudxns.net/support/lists/cid/17.html .. _conoha: https://www.conoha.jp/docs/ .. _constellix: https://api-docs.constellix.com/?version=latest .. _ddns: https://www.rfc-editor.org/rfc/rfc2136 .. _digitalocean: https://developers.digitalocean.com/documentation/v2/#create-a-new-domain .. _dinahosting: https://en.dinahosting.com/api .. _directadmin: https://www.directadmin.com/features.php?id=504 .. _dnsimple: https://developer.dnsimple.com/v2/ .. _dnsmadeeasy: https://api-docs.dnsmadeeasy.com/?version=latest .. _dnspark: https://dnspark.zendesk.com/entries/31210577-rest-api-dns-documentation .. _dnspod: https://support.dnspod.cn/support/api .. _dnsservices: https://dns.services/userapi .. _dreamhost: https://help.dreamhost.com/hc/en-us/articles/217560167-api_overview .. _duckdns: https://www.duckdns.org/spec.jsp .. _dynu: https://www.dynu.com/support/api .. _easydns: http://docs.sandbox.rest.easydns.net/ .. _easyname: https://www.easyname.com/en .. _euserv: https://support.euserv.com/api-doc/ .. _exoscale: https://community.exoscale.com/documentation/dns/api/ .. _flexibleengine: https://registry.terraform.io/providers/FlexibleEngineCloud/flexibleengine/latest/docs/data-sources/dns_zone_v2 .. _gandi: http://doc.livedns.gandi.net/ .. _gehirn: https://support.gehirn.jp/apidocs/gis/dns/index.html .. _glesys: https://github.com/glesys/api/wiki/ .. _godaddy: https://developer.godaddy.com/getstarted#access .. _googleclouddns: https://cloud.google.com/dns/api/v1/ .. _gransy: https://subreg.cz/manual/ .. _gratisdns: .. _henet: https://dns.he.net/ .. _hetzner: https://dns.hetzner.com/api-docs/ .. _hostingde: .. _hover: https://www.hover.com/ .. _infoblox: https://docs.infoblox.com/display/ilp/infoblox+documentation+portal .. _infomaniak: https://www.infomaniak.com .. _internetbs: https://internetbs.net/resellerregistrardomainnameapi .. _inwx: https://www.inwx.de/en/offer/api .. _joker: https://joker.com/faq/index.php?action=show&cat=39 .. _linode: https://www.linode.com/api/dns .. _linode4: https://developers.linode.com/api/docs/v4#tag/domains .. _localzone: .. _luadns: http://www.luadns.com/api.html .. _memset: https://www.memset.com/apidocs/methods_dns.html .. _misaka: https://misaka.io/dns/ .. _mythicbeasts: https://www.mythic-beasts.com/support/api/dnsv2 .. _namecheap: https://www.namecheap.com/support/api/methods.aspx .. _namecom: https://www.name.com/api-docs .. _namesilo: https://www.namesilo.com/api_reference.php .. _netcup: https://ccp.netcup.net/run/webservice/servers/endpoint.php .. _nfsn: .. _njalla: https://njal.la/api/ .. _nsone: https://ns1.com/api/ .. _oci: https://docs.oracle.com/en-us/iaas/Content/DNS/home.htm .. _onapp: https://docs.onapp.com/display/55api/onapp+5.5+api+guide .. _online: .. _ovh: https://api.ovh.com/ .. _plesk: https://docs.plesk.com/en-us/onyx/api-rpc/about-xml-api.28709/ .. _pointhq: https://pointhq.com/api/docs .. _porkbun: https://kb.porkbun.com/article/190-getting-started-with-the-porkbun-dns-api .. _powerdns: https://doc.powerdns.com/md/httpapi/api_spec/ .. _qcloud: https://cloud.tencent.com/document/product/1427/56194 .. _rackspace: https://developer.rackspace.com/docs/cloud-dns/v1/developer-guide/ .. _rage4: https://gbshouse.uservoice.com/knowledgebase/articles/109834-rage4-dns-developers-api .. _rcodezero: https://my.rcodezero.at/api-doc .. _route53: https://docs.aws.amazon.com/route53/latest/apireference/welcome.html .. _safedns: https://developers.ukfast.io/documentation/safedns .. _sakuracloud: https://developer.sakura.ad.jp/cloud/api/1.1/ .. _softlayer: https://sldn.softlayer.com/article/rest#http_request_types .. _timeweb: https://timeweb.cloud/api-docs .. _transip: https://api.transip.nl/rest/docs.html .. _ultradns: https://ultra-portalstatic.ultradns.com/static/docs/rest-api_user_guide.pdf .. _valuedomain: https://www.value-domain.com/service/api/ .. _vercel: https://vercel.com/docs/api#endpoints/dns .. _vultr: https://www.vultr.com/api/#tag/dns .. _webgo: https://www.webgo.de/ .. _wedos: https://www.wedos.com/cs/ .. _yandex: https://yandex.com/dev/domain/doc/reference/dns-add.html .. _yandexcloud: https://cloud.yandex.com/en/docs/dns/api-ref/DnsZone/ .. _zeit: .. _zilore: https://zilore.com/en/help/api .. _zonomi: http://zonomi.com/app/dns/dyndns.jsp

.. tag: intro-end

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_.

.. _Lexicon documentation: https://dns-lexicon.readthedocs.io .. _User guide: https://dns-lexicon.readthedocs.io/en/latest/user_guide.html

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.

.. _Developer guide: https://dns-lexicon.readthedocs.io/en/latest/developer_guide.html

Licensing

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

.. _Logo: https://thenounproject.com/term/transform/397964

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc