Skip to main content

hrd-py

A Python library and CLI for the HRD.pl API.

Features

  • Check account balance.
  • List domains and their status.
  • Monitor domain expiry.
  • Renew domains manually or automatically.
  • View account operation history (purchases, renewals, etc.).
  • Show full domain details, including the registrant/owner.
  • Look up a subscriber (abonent) and every domain they own.
  • List every subscriber on an account.
  • Update a domain's nameservers.
  • Manage glue host records (create, update, delete, list, info).
  • Read pending account notifications (poll queue).

Installation

pip install .

Shell completion (bash)

hrd uses Click, which provides bash completion out of the box (no extra dependency needed). Add this to your ~/.bashrc:

eval "$(_HRD_COMPLETE=bash_source hrd)"

Then reload your shell (source ~/.bashrc or open a new terminal). hrd <TAB> will complete subcommands, and hrd --profile <TAB> etc. will complete options.

Configuration

Create a .env file with your HRD.pl credentials:

HRD_LOGIN=your_login
HRD_PASS=your_api_password
HRD_HASH=your_api_hash

Usage

CLI

hrd balance
hrd domains --all
hrd expiring --days 30
hrd renew example.com
hrd auto-renew --days 7           # asks before renewing each domain, across all profiles
hrd auto-renew --days 7 --no-ask  # renew without confirmation prompts
hrd history --limit 20            # recent operations across all profiles, with date and profile
hrd domain-info example.com       # full domain details, including the owner
hrd owner-info 173216             # subscriber details and every domain they own
hrd owner-list                    # every subscriber id on the account(s)
hrd owner-list --details          # ... plus each subscriber's name
hrd nameservers example.com ns1.example.com ns2.example.com  # update a domain's nameservers
hrd host list                     # list glue host records
hrd host info ns1.example.com     # show a glue host's IP addresses
hrd host create ns1.example.com --ipv4 1.2.3.4
hrd host update ns1.example.com --ipv4 1.2.3.5
hrd host delete ns1.example.com
hrd notifications                 # peek at the oldest pending account notification per profile
hrd notifications --ack --limit 10  # drain and acknowledge up to 10 notifications
hrd --debug balance               # print raw API requests/responses (password is masked)

Library

from hrd_py import HRDClient

client = HRDClient(login, password, api_hash)
client.login()
balance = client.get_balance()
print(f"Balance: {balance.balance}")

Download files

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

Source Distribution

hrd_py-0.0.8.tar.gz (24.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hrd_py-0.0.8-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file hrd_py-0.0.8.tar.gz.

File metadata

  • Download URL: hrd_py-0.0.8.tar.gz
  • Upload date:
  • Size: 24.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for hrd_py-0.0.8.tar.gz
Algorithm Hash digest
SHA256 ff44986935aae2564223c82566e235d52379868e4ad4e96f7ad92ba66e6f25c3
MD5 818f3f7a9167f2881c33a936c57e7f4b
BLAKE2b-256 d08e6156d97dcd9f770bda70388a716c1245d57c2dee8a2c43c58794183ae8e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for hrd_py-0.0.8.tar.gz:

Publisher: ci.yml on theundefined/hrd-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hrd_py-0.0.8-py3-none-any.whl.

File metadata

  • Download URL: hrd_py-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 16.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for hrd_py-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 f40c01c641461ea274fe46bb1b5b47482623897a61f09adb22fb0c22dfeca763
MD5 c823fd4b9aef04bad01514ea4618bb49
BLAKE2b-256 4bd7668182083ce426ccdb5efdc2ac33fc0e85c9b864f01de601efce1eecf5b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for hrd_py-0.0.8-py3-none-any.whl:

Publisher: ci.yml on theundefined/hrd-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.0.8 This release

2 files

0.0.6

2 files

0.0.5

2 files

0.0.4

2 files

0.0.3

2 files

0.0.2

2 files

0.0.1

2 files

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