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.6.tar.gz (17.5 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.6-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: hrd_py-0.0.6.tar.gz
  • Upload date:
  • Size: 17.5 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.6.tar.gz
Algorithm Hash digest
SHA256 1d233c9959833cc0c442897e1ad758c7408a83f2cd235ea9dd0d1bef293bbe6b
MD5 670e5428d2b1bb5a32fbbbe3a091c859
BLAKE2b-256 7f24ecf3e7ced941ad11dc8f7a017bb60206feed72949fe847042624ebdbcab7

See more details on using hashes here.

Provenance

The following attestation bundles were made for hrd_py-0.0.6.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.6-py3-none-any.whl.

File metadata

  • Download URL: hrd_py-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 15.9 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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4f44d80baa71d6bf2cb684fd4e0c13bea1fd9051ee7341ace6a15db6a830aa44
MD5 74e9e1938d51f42179a744ca871856fd
BLAKE2b-256 5d7d1710c2d31ce477b12d2d06d7781b010f2047e61bc62527af9d4386736204

See more details on using hashes here.

Provenance

The following attestation bundles were made for hrd_py-0.0.6-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

0.0.8

2 files

This release

0.0.6 This release

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