Skip to main content

Python client library for DNS Lookup API.

Project description

website-contacts-py license dns-lookup-py release dns-lookup-py build

Overview

The client library for DNS Lookup API in Python language.

The minimum Python version is 3.6.

Installation

pip install dns-lookup-api

Examples

Full API documentation available here

Create a new client

from dnslookupapi import *

client = Client('Your API key')

Make basic requests

# Get DNS records for a domain name.
response = client.get('youtube.com')
print(response)
print(response.records_by_type['MX'])

# Get raw API response in XML format
raw_result = client.get_raw('bbc.com',
    output_format=Client.XML_FORMAT)

Advanced usage

Extra request parameters

result = client.get(
    'samsung.com',
    'A,MX,NS')

Response model overview

Response:
    - domain_name: [str]
    - dns_types: str
    - types: [int]
    - dns_records: [DnsRecord]
        - name: str
        - type: int
        - dns_type: str
        - ttl: int
        - value: str
        - raw_text: str
    - meta_description: str
    - meta_title: str
    - records_by_type: { 'dns_type' -> [DnsRecord] }

Sample response

{
'domain_name': 'youtube.com',
'types': '[-1]',
'dns_types': '_all',
'dns_records': [
      {'type': '16', 'dns_type': 'TXT', 'name': 'youtube.com.', 'ttl': '3600',
       'value': 'v=spf1 include:google.com mx -all',
       'raw_text': 'youtube.com.\t\t3600\tIN\tTXT\t"v=spf1 include:google.com mx -all"'},
      {'type': '16', 'dns_type': 'TXT', 'name': 'youtube.com.', 'ttl': '3600',
       'value': 'google-site-verification=QtQWEwHWM8tHiJ4s-jJWzEQrD_fF3luPnpzNDH-Nw-w',
       'raw_text': 'youtube.com.\t\t3600\tIN\tTXT\t"google-site-verification=QtQWEwHWM8tHiJ4s-jJWzEQrD_fF3luPnpzNDH-Nw-w"'},
      {'type': '1', 'dns_type': 'A', 'name': 'youtube.com.', 'ttl': '300',
       'value': '142.250.68.78',
       'raw_text': 'youtube.com.\t\t300\tIN\tA\t142.250.68.78'},
      {'type': '257', 'dns_type': 'CAA', 'name': 'youtube.com.', 'ttl': '21600',
       'value': 'pki.goog',
       'raw_text': 'youtube.com.\t\t21600\tIN\tCAA\t0 issue "pki.goog"',
       'flags': '0', 'tag': 'issue'},
      {'type': '2', 'dns_type': 'NS', 'name': 'youtube.com.', 'ttl': '21600',
       'value': 'ns2.google.com.',
       'raw_text': 'youtube.com.\t\t21600\tIN\tNS\tns2.google.com.'},
      {'type': '2', 'dns_type': 'NS', 'name': 'youtube.com.', 'ttl': '21600',
       'value': 'ns1.google.com.',
       'raw_text': 'youtube.com.\t\t21600\tIN\tNS\tns1.google.com.'},
      {'type': '6', 'dns_type': 'SOA', 'name': 'youtube.com.', 'ttl': '60',
       'value': 'ns1.google.com.',
       'raw_text': 'youtube.com.\t\t60\tIN\tSOA\tns1.google.com. dns-admin.google.com. 404480356 900 900 1800 60',
       'admin': 'dns-admin.google.com.', 'host': 'ns1.google.com.',
       'expire': '1800', 'minimum': '60', 'refresh': '900', 'retry': '900',
       'serial': '404480356'},
      {'type': '28', 'dns_type': 'AAAA', 'name': 'youtube.com.', 'ttl': '300',
       'value': '2607:f8b0:4007:811:0:0:0:200e',
       'raw_text': 'youtube.com.\t\t300\tIN\tAAAA\t2607:f8b0:4007:811:0:0:0:200e'},
      {'type': '15', 'dns_type': 'MX', 'name': 'youtube.com.', 'ttl': '254',
       'value': 'smtp.google.com.',
       'raw_text': 'youtube.com.\t\t254\tIN\tMX\t0 smtp.google.com.',
       'priority': '0', 'host': 'smtp.google.com.'}
                ]

'records_by_type':
  {'TXT': [
          {'type': '16', 'dns_type': 'TXT', 'name': 'youtube.com.', 'ttl': '3600',
           'value': 'v=spf1 include:google.com mx -all',
           'raw_text': 'youtube.com.\t\t3600\tIN\tTXT\t"v=spf1 include:google.com mx -all"'},
          {'type': '16', 'dns_type': 'TXT', 'name': 'youtube.com.', 'ttl': '3600',
           'value': 'google-site-verification=QtQWEwHWM8tHiJ4s-jJWzEQrD_fF3luPnpzNDH-Nw-w',
           'raw_text': 'youtube.com.\t\t3600\tIN\tTXT\t"google-site-verification=QtQWEwHWM8tHiJ4s-jJWzEQrD_fF3luPnpzNDH-Nw-w"'}
          ],
   'A':   [
          {'type': '1', 'dns_type': 'A', 'name': 'youtube.com.', 'ttl': '300',
           'value': '142.250.68.78',
           'raw_text': 'youtube.com.\t\t300\tIN\tA\t142.250.68.78'}
          ],
   'CAA': [
          {'type': '257', 'dns_type': 'CAA', 'name': 'youtube.com.', 'ttl': '21600',
           'value': 'pki.goog',
           'raw_text': 'youtube.com.\t\t21600\tIN\tCAA\t0 issue "pki.goog"',
           'flags': '0', 'tag': 'issue'}
          ],
   'NS':  [
          {'type': '2', 'dns_type': 'NS', 'name': 'youtube.com.', 'ttl': '21600',
           'value': 'ns2.google.com.',
           'raw_text': 'youtube.com.\t\t21600\tIN\tNS\tns2.google.com.'},
          {'type': '2', 'dns_type': 'NS', 'name': 'youtube.com.', 'ttl': '21600',
           'value': 'ns1.google.com.',
           'raw_text': 'youtube.com.\t\t21600\tIN\tNS\tns1.google.com.'}
          ],
   'SOA': [
          {'type': '6', 'dns_type': 'SOA', 'name': 'youtube.com.', 'ttl': '60',
           'value': 'ns1.google.com.',
           'raw_text': 'youtube.com.\t\t60\tIN\tSOA\tns1.google.com. dns-admin.google.com. 404480356 900 900 1800 60',
           'admin': 'dns-admin.google.com.', 'host': 'ns1.google.com.',
           'expire': '1800', 'minimum': '60', 'refresh': '900',
           'retry': '900', 'serial': '404480356'}
          ],
   'AAAA': [
          {'type': '28', 'dns_type': 'AAAA', 'name': 'youtube.com.', 'ttl': '300',
           'value': '2607:f8b0:4007:811:0:0:0:200e',
           'raw_text': 'youtube.com.\t\t300\tIN\tAAAA\t2607:f8b0:4007:811:0:0:0:200e'}
           ],
   'MX':  [
          {'type': '15', 'dns_type': 'MX', 'name': 'youtube.com.', 'ttl': '254',
           'value': 'smtp.google.com.',
           'raw_text': 'youtube.com.\t\t254\tIN\tMX\t0 smtp.google.com.',
           'priority': '0',
           'host': 'smtp.google.com.'}
          ]
  }
}

Changelog

1.0.0 (2021-10-21)

  • First release

Project details


Download files

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

Source Distribution

dns-lookup-api-1.0.0.tar.gz (10.5 kB view hashes)

Uploaded Source

Built Distribution

dns_lookup_api-1.0.0-py3-none-any.whl (11.1 kB view hashes)

Uploaded Python 3

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