Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Laravel Hetzner Dns Api

Laravel Hetzner Dns Api Laravel Package

dutchcodingcompany/laravel-hetzner-dns-api

A Laravel wrapper for the Hetzner DNS API that lets you manage DNS zones and records from your application. Configure your API token and list, create, update, or delete records through a simple, Laravel-friendly interface. Ideal for automating domain and DNS workflows.

View on GitHub
Deep Wiki
Context7

Laravel Hetzner DNS API is a clean, fluent wrapper around the Hetzner DNS API for Laravel applications. Manage zones and DNS records directly from your code or Tinker—no manual HTTP calls or boilerplate required. The package integrates seamlessly with Laravel's ecosystem, making automated DNS management feel native.

  • Fluent, expressive API for zones and records
  • Full CRUD support for DNS records
  • Configurable API token via config or environment
  • Laravel-friendly service provider and facade
  • PSR-compliant, testable architecture
Frequently asked questions about Laravel Hetzner Dns Api
What is dutchcodingcompany/laravel-hetzner-dns-api used for?
It is a Laravel integration for the Hetzner DNS API that lets your application manage DNS zones and records programmatically. It is useful for deployment automation, environment provisioning, certificate validation, and DNS-as-code workflows. Treat it as an infrastructure adapter rather than domain logic, and wrap it behind an internal service if DNS changes are production-critical.
How do I install and configure this Laravel Hetzner DNS package?
Install it with Composer and configure your Hetzner API credentials through environment variables or your application’s configuration layer. The package is expected to integrate through Laravel’s service provider and configuration conventions, but check the repository README for the exact installation and publishing steps. Validate the setup against a disposable or non-production Hetzner DNS zone before using it in production.
Which Laravel, PHP, and Saloon versions are supported?
The package is a Laravel Composer package built around the Hetzner DNS API and likely depends on Saloon for HTTP requests, but the exact supported Laravel, PHP, and Saloon version matrix should be confirmed from its composer.json and release notes. Pin the package version and verify the transitive Saloon dependency against your application baseline. Do not assume compatibility with every Laravel or PHP version without checking the package constraints.
Can it manage both DNS zones and DNS records?
The package is described as managing Hetzner DNS zones and records, with a fluent wrapper for creating, updating, and deleting records. That makes it suitable for common DNS automation tasks such as creating records during deployments or certificate validation. Confirm the exact operation coverage, including bulk updates, validation, and error mapping, in the package source or documentation before relying on it for complex DNS workflows.
How should I store and rotate my Hetzner API token?
Store the Hetzner API token in environment variables or a secrets manager, never in source control, and restrict access to the applications and workers that need DNS changes. Rotate tokens on a schedule or after staff changes, and confirm what scoping Hetzner supports for DNS API tokens. The package should not be responsible for business-level approval or token lifecycle management, so keep those controls in your application and operations runbooks.
Does the package handle Hetzner API rate limits, retries, and timeouts?
The package is described as a thin API wrapper, so do not assume it provides comprehensive rate-limit handling, retries, timeouts, or idempotency. Treat those as application responsibilities unless the package source clearly documents built-in behavior. Implement logging, validation, retry policy, and approval gates in an internal DNS adapter around the package, especially for production changes.
What changed in version 1.0.1 and do I need to update my code?
Version 1.0.1 is a patch-level compatibility fix: requests using HasJsonBody now also implement HasBody. It reduces request-body handling risk and does not indicate a new public feature or breaking change, so existing consumers should not need code changes. Still run regression tests for record-create and record-update paths, and confirm any custom request classes or decorators satisfy the expected body interface.
How should I test DNS record changes safely before production?
Spike against a disposable Hetzner DNS zone and add automated tests for record create, update, delete, and error cases. Include contract coverage for request-body serialization after the 1.0.1 change, particularly for JSON-body requests. Roll out to non-production automation first, then use approval gates and rollback runbooks before allowing production DNS changes.
Is this package suitable for production DNS automation?
It can be suitable for low-volume production DNS automation, but DNS changes are production-impacting and the package is a small-maintainer, thin API wrapper. Keep it behind an internal adapter so application code does not depend directly on package request classes, and validate operations against a staging zone first. Use logging, token rotation, retry policy, approval gates, and rollback procedures rather than relying on the package for business-level validation.
What are the alternatives if this package is not maintained or does not fit?
Alternatives include calling the Hetzner DNS API directly through Laravel’s HTTP client, building your own small Saloon-based client, or using another DNS provider integration. Because the package has a small maintainer base, wrap it behind an internal interface so you can fork it or replace it without rewriting application code. Pin the version, monitor upstream activity and dependency drift, and migrate one DNS operation at a time.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
frankyso/ipaymu
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
adachsoft/api-version-bundle
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core