Skip to content

Simple, dependency-free PHP classes for managing DNS records and zones via provider APIs.

License

Notifications You must be signed in to change notification settings

wilhelmf-devel/php-dns-clients

Repository files navigation

PHP DNS Clients

A simple and lightweight collection of single-file PHP classes for managing DNS zones and records via the APIs of various DNS providers. No autoloaders, no dependencies – just drop in the class you need.

Supported Providers

  • INWX (implemented)
  • InternetX (Schlund, Leonex, ...) (implemented)
  • Hetzner (implemented)
  • (Possibly more to come: Nameshield, Cloudflare. AWS Route53 is a maybe due to its authentication complexity.)

Features

  • Minimal, readable PHP code
  • One class per provider, one file each
  • Focused on DNS zone and record management (list, add, delete, clone)
  • No external dependencies

Example: Using the INWX Client

require 'myInwxApiClient.php';

$USER = 'your_inwx_username';
$PW = 'your_inwx_password';
$client = new myInwxApiClient($USER, $PW, true); // true = sandbox

// List all DNS zones
$zones = $client->ZonesList();
print_r($zones);

// Add a new A record
$client->ZoneAddRecord('example.com', 'www', 'A', '192.0.2.10');

Why?

Most vendor APIs are overly complex, use auto-loaders, or require extra dependencies. This project aims to provide “drop-in” single-file classes for scripting, CLI tools, and hobbyists.

Contributions

Pull requests for new DNS vendors or improvements are welcome! Please keep the spirit: single file, no dependencies, focus on DNS zone/record management.

License

MIT

About

Simple, dependency-free PHP classes for managing DNS records and zones via provider APIs.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages