certunlp/rdap-client
Laravel-friendly RDAP client for querying domain, IP, and ASN registration data from RDAP servers. Provides simple APIs to fetch and parse RDAP responses, helping you integrate WHOIS-style lookups into PHP apps with minimal setup.
rdap:lookup jobs). The package’s predictable JSON responses align with Laravel’s structured data handling (e.g., Eloquent, API responses)./domain, /ip). Developers can replace manual file_get_contents() or curl calls with a single method call (e.g., $client->domain('example.com')).404 Not Found for non-existent domains) may need custom middleware or exception handling in Laravel (e.g., throw_if in service providers).json_decode without assoc flag).composer why-not-update) is critical.Is PHP 8.x/9.x Support Required?
league/rdap (if available).What RDAP Endpoints Are Needed?
How Will Errors Be Handled?
Performance Requirements
License Compatibility
HttpClient with the package’s client in config/app.php or a service provider.Job (e.g., RdapLookupJob) for async processing (critical for performance).Cache::remember) to avoid repeated queries for the same domain/IP.throttle) or auth headers via Laravel middleware.file_get_contents('https://rdap.verisign.com/com/v1/domain/example.com')) with the package.$client = new \Certunlp\RdapClient\Client('https://rdap.verisign.com');
$response = $client->domain('example.com');
dd($response->entities[0]->events); // Access parsed data
AppServiceProvider:
$this->app->singleton(\Certunlp\RdapClient\Client::class, function ($app) {
return new \Certunlp\RdapClient\Client(config('rdap.endpoint'));
});
class RdapLookupJob implements ShouldQueue {
public function handle() {
$client = app(\Certunlp\RdapClient\Client::class);
$result = $client->ip($this->ipAddress);
// Store or process result
}
}
try {
$client->asn(1234);
} catch (\Certunlp\RdapClient\Exception\RdapException $e) {
report($e); // Laravel error reporting
}
/domain, /ip) dynamically if the package doesn’t support it.json_schema validation).Laravel\Queue\RetryUntil) for transient failures.league/rdap if it emerges) to avoid vendor lock-in.429 Too Many Requests) may require registry-specific handling.How can I help you explore Laravel packages today?